コード例 #1
0
  /**
   * Initializes all the log rotation policies.
   *
   * @throws ConfigException If an unrecoverable problem arises in the process of performing the
   *     initialization as a result of the server configuration.
   * @throws InitializationException If a problem occurs during initialization that is not related
   *     to the server configuration.
   */
  public void initializeLogRotationPolicyConfig() throws ConfigException, InitializationException {
    ServerManagementContext context = ServerManagementContext.getInstance();
    RootCfg root = context.getRootConfiguration();

    root.addLogRotationPolicyAddListener(this);
    root.addLogRotationPolicyDeleteListener(this);

    for (String name : root.listLogRotationPolicies()) {
      LogRotationPolicyCfg config = root.getLogRotationPolicy(name);

      RotationPolicy rotationPolicy = getRotationPolicy(config);

      DirectoryServer.registerRotationPolicy(config.dn(), rotationPolicy);
    }
  }
コード例 #2
0
  /**
   * Initializes all of the root users currently defined in the Directory Server configuration, as
   * well as the set of privileges that root users will inherit by default.
   *
   * @throws ConfigException If a configuration problem causes the identity mapper initialization
   *     process to fail.
   * @throws InitializationException If a problem occurs while initializing the identity mappers
   *     that is not related to the server configuration.
   */
  public void initializeRootDNs() throws ConfigException, InitializationException {
    // Get the root configuration object.
    ServerManagementContext managementContext = ServerManagementContext.getInstance();
    RootCfg rootConfiguration = managementContext.getRootConfiguration();

    // Get the root DN configuration object, use it to set the default root
    // privileges, and register a change listener for it.
    RootDNCfg rootDNCfg = rootConfiguration.getRootDN();
    rootPrivilegeChangeListener.setDefaultRootPrivileges(rootDNCfg);
    rootDNCfg.addChangeListener(rootPrivilegeChangeListener);

    // Register as an add and delete listener for new root DN users.
    rootDNCfg.addRootDNUserAddListener(this);
    rootDNCfg.addRootDNUserDeleteListener(this);

    // Get the set of root users defined below "cn=Root DNs,cn=config".  For
    // each one, register as a change listener, and get the set of alternate
    // bind DNs.
    for (String name : rootDNCfg.listRootDNUsers()) {
      RootDNUserCfg rootUserCfg = rootDNCfg.getRootDNUser(name);
      rootUserCfg.addChangeListener(this);
      DirectoryServer.registerRootDN(rootUserCfg.dn());

      HashSet<DN> altBindDNs = new HashSet<DN>();
      for (DN alternateBindDN : rootUserCfg.getAlternateBindDN()) {
        try {
          altBindDNs.add(alternateBindDN);
          DirectoryServer.registerAlternateRootDN(rootUserCfg.dn(), alternateBindDN);
        } catch (DirectoryException de) {
          throw new InitializationException(de.getMessageObject());
        }
      }

      alternateBindDNs.put(rootUserCfg.dn(), altBindDNs);
    }
  }