## org.jfree.report.modules.preferences.base
Class ConfigFactory

    java.lang.Object
      org.jfree.report.modules.preferences.base.ConfigFactory

    public final class ConfigFactory

extends java.lang.Object

The config factory is used to access the currently active config storage implementation. The implementation itself allows to read or store a set of properties stored under a certain path.

Author:
  Thomas Morgner

Field Summary
`static java.lang.String` `CONFIG_TARGET_KEY` The selector configuration key that defines the active config storage implementation.

Method Summary
`void` `defineSystemStorage(ConfigStorage storage)` Defines the system storage implementation that should be used.
`void` `defineUserStorage(ConfigStorage storage)` Defines the user storage implementation that should be used.
`static java.lang.String` `encodePath(java.lang.String path)` Encodes the given configuration path.
`static ConfigFactory` `getInstance()` Returns the singleton instance of the config factory.
`ConfigStorage` `getSystemStorage()` Returns the system settings storage implementation used in the config subsystem.
`ConfigStorage` `getUserStorage()` Returns the user settings storage implementation used in the config subsystem.
`static boolean` `isValidPath(java.lang.String path)` Checks, whether the given string denotes a valid config storage path.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### CONFIG_TARGET_KEY

    public static final java.lang.String CONFIG_TARGET_KEY

  The selector configuration key that defines the active config storage implementation.

  See Also:
    Constant Field Values

Method Detail

### getInstance

    public static ConfigFactory getInstance()

  Returns the singleton instance of the config factory.

  Returns:
    the config factory

### defineUserStorage

    public void defineUserStorage(ConfigStorage storage)

  Defines the user storage implementation that should be used. This method should only be called by the module initialization methods.

  Parameters:
    `storage` - the user settings storage implementation.

### defineSystemStorage

    public void defineSystemStorage(ConfigStorage storage)

  Defines the system storage implementation that should be used. This method should only be called by the module initialization methods.

  Parameters:
    `storage` - the system settings storage implementation.

### getUserStorage

    public ConfigStorage getUserStorage()

  Returns the user settings storage implementation used in the config subsystem.

  Returns:
    the user settingsstorage provider.

### getSystemStorage

    public ConfigStorage getSystemStorage()

  Returns the system settings storage implementation used in the config subsystem.

  Returns:
    the system settings storage provider.

### isValidPath

    public static boolean isValidPath(java.lang.String path)

  Checks, whether the given string denotes a valid config storage path. Such an path must not contain whitespaces or non-alphanumeric characters.

  Parameters:
    `path` - the path that should be tested.
  Returns:
    true, if the path is valid, false otherwise.

### encodePath

    public static java.lang.String encodePath(java.lang.String path)

  Encodes the given configuration path. All non-ascii characters get replaced by an escape sequence.

  Parameters:
    `path` - the path.
  Returns:
    the translated path.