Class ConfigurationFramework

java.lang.Object
org.forgerock.opendj.config.ConfigurationFramework

public final class ConfigurationFramework extends Object
This class is responsible for managing the configuration framework including:
  • loading core components during application initialization
  • loading extensions during and after application initialization
  • changing the property validation strategy based on whether the application is a client or server.
This class defines a class loader which will be used for loading components. For extensions which define their own extended configuration definitions, the class loader will make sure that the configuration definition classes are loaded and initialized.

Initially the configuration framework is disabled, and calls to the getClassLoader() will return the system default class loader.

Applications MUST NOT maintain persistent references to the class loader as it can change at run-time.

  • Method Details

    • getPrintableExtensionInformation

      public static String getPrintableExtensionInformation(ServerPaths serverPaths)
      Returns a string representing all information about extensions.
      Parameters:
      serverPaths - The server paths
      Returns:
      A string representing all information about extensions; null if there is no information available.
    • newConfigurationFramework

      public static ConfigurationFramework newConfigurationFramework(ServerPaths serverPaths)
      Returns a new configuration framework instance.
      Parameters:
      serverPaths - the server paths to use
      Returns:
      a new configuration framework instance
    • getClassLoader

      public static ClassLoader getClassLoader()
      Returns the class loader which should be used for loading classes and resources. When this configuration framework is disabled, the system default class loader will be returned by default.

      Applications MUST NOT maintain persistent references to the class loader as it can change at run-time.

      Returns:
      Returns the class loader which should be used for loading classes and resources.
    • initialize

      public void initialize() throws ConfigException
      Initializes the configuration framework using the application's class loader as the parent class loader, and the current working directory as the install and instance path.
      Throws:
      ConfigException - If the configuration framework could not initialize successfully.
      IllegalStateException - If the configuration framework has already been initialized.
    • initializeSilently

      public void initializeSilently()
      Silently initialize the configuration framework.

      Do not log anything during the initialization. Catch ConfigException which may occurs and convert it to a RuntimeException. This method should be used by client tools who need to initialize the framework.

    • forceInitialize

      public void forceInitialize() throws ConfigException
      Initializes the configuration framework using the application's class loader as the parent class loader, and the provided install and instance paths.
      Throws:
      ConfigException - If the configuration framework could not initialize successfully.
      IllegalStateException - If the configuration framework has already been initialized.