Class Configurations
Complex initializations of configuration builders can be done in a pretty straight-forward way by making use of the provided fluent API. However, if only default settings are used (and maybe a configuration file to be loaded has to be specified), this approach tends to become a bit verbose. This class was introduced to simplify the creation of configuration objects in such cases. It offers a bunch of methods which allow the creation of some standard configuration classes with default settings passing in only a minimum required parameters.
An an example consider the creation of a PropertiesConfiguration
object from a file. Using a builder, code
like the following one would have to be written:
Parameters params = new Parameters(); FileBasedConfigurationBuilder<PropertiesConfiguration> builder = new FileBasedConfigurationBuilder<PropertiesConfiguration>(PropertiesConfiguration.class) .configure(params.fileBased().setFile(new File("config.properties"))); PropertiesConfiguration config = builder.getConfiguration();
With a convenience method of Configurations
the same can be achieved with the following:
Configurations configurations = new Configurations(); PropertiesConfiguration config = configurations.properties(new File("config.properties"));
There are similar methods for constructing builder objects from which configurations can then be obtained.
This class is thread-safe. A single instance can be created by an application and used in a central way to create
configuration objects. When an instance is created a Parameters
instance can be passed in. Otherwise, a
default instance is created. In any case, the Parameters
instance associated with a Configurations
object can be used to define default settings for the configurations to be created.
- Since:
- 2.0
- See Also:
-
Constructor Summary
ConstructorDescriptionCreates a newConfigurations
instance with default settings.Configurations
(Parameters params) Creates a new instance ofConfigurations
and initializes it with the specifiedParameters
object. -
Method Summary
Modifier and TypeMethodDescriptionCreates aCombinedConfiguration
instance from the content of the given file.Creates aCombinedConfiguration
instance from the content of the file identified by the given path.Creates aCombinedConfiguration
instance from the content of the given URL.combinedBuilder
(File file) Creates a builder for aCombinedConfiguration
and initializes it with the given file to be loaded.combinedBuilder
(String path) Creates a builder for aCombinedConfiguration
and initializes it with the given path to the file to be loaded.combinedBuilder
(URL url) Creates a builder for aCombinedConfiguration
and initializes it with the given URL to be loaded.<T extends FileBasedConfiguration>
TCreates an instance of the specified file-based configuration class from the content of the given file.<T extends FileBasedConfiguration>
TCreates an instance of the specified file-based configuration class from the content of the file identified by the given path.<T extends FileBasedConfiguration>
TCreates an instance of the specified file-based configuration class from the content of the given URL.<T extends FileBasedConfiguration>
FileBasedConfigurationBuilder<T>fileBasedBuilder
(Class<T> configClass, File file) Creates aFileBasedConfigurationBuilder
for the specified configuration class and initializes it with the file to be loaded.<T extends FileBasedConfiguration>
FileBasedConfigurationBuilder<T>fileBasedBuilder
(Class<T> configClass, String path) Creates aFileBasedConfigurationBuilder
for the specified configuration class and initializes it with the path to the file to be loaded.<T extends FileBasedConfiguration>
FileBasedConfigurationBuilder<T>fileBasedBuilder
(Class<T> configClass, URL url) Creates aFileBasedConfigurationBuilder
for the specified configuration class and initializes it with the URL to the file to be loaded.Gets theParameters
instance associated with this object.Creates aINIConfiguration
instance from the content of the given file.Creates aINIConfiguration
instance from the content of the file identified by the given path.Creates aINIConfiguration
instance from the content of the given URL.iniBuilder
(File file) Creates a builder for aINIConfiguration
and initializes it with the given file to be loaded.iniBuilder
(String path) Creates a builder for aINIConfiguration
and initializes it with the file file identified by the given path.iniBuilder
(URL url) Creates a builder for aINIConfiguration
and initializes it with the given URL to be loaded.properties
(File file) Creates aPropertiesConfiguration
instance from the content of the given file.properties
(String path) Creates aPropertiesConfiguration
instance from the content of the file identified by the given path.properties
(URL url) Creates aPropertiesConfiguration
instance from the content of the given URL.Creates a builder for aPropertiesConfiguration
.propertiesBuilder
(File file) Creates a builder for aPropertiesConfiguration
and initializes it with the given file to be loaded.propertiesBuilder
(String path) Creates a builder for aPropertiesConfiguration
and initializes it with the given path to the file to be loaded.propertiesBuilder
(URL url) Creates a builder for aPropertiesConfiguration
and initializes it with the given URL to be loaded.propertiesBuilder
(PropertiesBuilderParameters parameters) Creates a builder for aPropertiesConfiguration
and initializes it with the given parameters to be loaded.Creates aXMLConfiguration
instance from the content of the given file.Creates aXMLConfiguration
instance from the content of the file identified by the given path.Creates aXMLConfiguration
instance from the content of the given URL.xmlBuilder
(File file) Creates a builder for aXMLConfiguration
and initializes it with the given file to be loaded.xmlBuilder
(String path) Creates a builder for aXMLConfiguration
and initializes it with the given path to the file to be loaded.xmlBuilder
(URL url) Creates a builder for aXMLConfiguration
and initializes it with the given URL to be loaded.
-
Constructor Details
-
Configurations
public Configurations()Creates a newConfigurations
instance with default settings. -
Configurations
Creates a new instance ofConfigurations
and initializes it with the specifiedParameters
object.- Parameters:
params
- theParameters
(may be null, then a default instance is created)
-
-
Method Details
-
combined
Creates aCombinedConfiguration
instance from the content of the given file. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
file
- the file to be loaded- Returns:
- a
CombinedConfiguration
object initialized from this file - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
combined
Creates aCombinedConfiguration
instance from the content of the file identified by the given path. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
path
- the path to the file to be loaded- Returns:
- a
CombinedConfiguration
object initialized from this URL - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
combined
Creates aCombinedConfiguration
instance from the content of the given URL. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
url
- the URL to be loaded- Returns:
- a
CombinedConfiguration
object initialized from this URL - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
combinedBuilder
Creates a builder for aCombinedConfiguration
and initializes it with the given file to be loaded.- Parameters:
file
- the file to be loaded- Returns:
- the newly created
CombinedConfigurationBuilder
-
combinedBuilder
Creates a builder for aCombinedConfiguration
and initializes it with the given path to the file to be loaded.- Parameters:
path
- the path to the file to be loaded- Returns:
- the newly created
CombinedConfigurationBuilder
-
combinedBuilder
Creates a builder for aCombinedConfiguration
and initializes it with the given URL to be loaded.- Parameters:
url
- the URL to be loaded- Returns:
- the newly created
CombinedConfigurationBuilder
-
fileBased
public <T extends FileBasedConfiguration> T fileBased(Class<T> configClass, File file) throws ConfigurationException Creates an instance of the specified file-based configuration class from the content of the given file. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Type Parameters:
T
- the type of the configuration to be constructed- Parameters:
configClass
- the configuration classfile
- the file to be loaded- Returns:
- a
FileBasedConfiguration
object initialized from this file - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
fileBased
public <T extends FileBasedConfiguration> T fileBased(Class<T> configClass, String path) throws ConfigurationException Creates an instance of the specified file-based configuration class from the content of the file identified by the given path. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Type Parameters:
T
- the type of the configuration to be constructed- Parameters:
configClass
- the configuration classpath
- the path to the file to be loaded- Returns:
- a
FileBasedConfiguration
object initialized from this file - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
fileBased
public <T extends FileBasedConfiguration> T fileBased(Class<T> configClass, URL url) throws ConfigurationException Creates an instance of the specified file-based configuration class from the content of the given URL. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Type Parameters:
T
- the type of the configuration to be constructed- Parameters:
configClass
- the configuration classurl
- the URL to be loaded- Returns:
- a
FileBasedConfiguration
object initialized from this file - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
fileBasedBuilder
public <T extends FileBasedConfiguration> FileBasedConfigurationBuilder<T> fileBasedBuilder(Class<T> configClass, File file) Creates aFileBasedConfigurationBuilder
for the specified configuration class and initializes it with the file to be loaded.- Type Parameters:
T
- the type of the configuration to be constructed- Parameters:
configClass
- the configuration classfile
- the file to be loaded- Returns:
- the new
FileBasedConfigurationBuilder
-
fileBasedBuilder
public <T extends FileBasedConfiguration> FileBasedConfigurationBuilder<T> fileBasedBuilder(Class<T> configClass, String path) Creates aFileBasedConfigurationBuilder
for the specified configuration class and initializes it with the path to the file to be loaded.- Type Parameters:
T
- the type of the configuration to be constructed- Parameters:
configClass
- the configuration classpath
- the path to the file to be loaded- Returns:
- the new
FileBasedConfigurationBuilder
-
fileBasedBuilder
public <T extends FileBasedConfiguration> FileBasedConfigurationBuilder<T> fileBasedBuilder(Class<T> configClass, URL url) Creates aFileBasedConfigurationBuilder
for the specified configuration class and initializes it with the URL to the file to be loaded.- Type Parameters:
T
- the type of the configuration to be constructed- Parameters:
configClass
- the configuration classurl
- the URL to be loaded- Returns:
- the new
FileBasedConfigurationBuilder
-
getParameters
Gets theParameters
instance associated with this object.- Returns:
- the associated
Parameters
object
-
ini
Creates aINIConfiguration
instance from the content of the given file. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
file
- the file to be loaded- Returns:
- a
INIConfiguration
object initialized from this file - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
ini
Creates aINIConfiguration
instance from the content of the file identified by the given path. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
path
- the path to the file to be loaded- Returns:
- a
INIConfiguration
object initialized from this file - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
ini
Creates aINIConfiguration
instance from the content of the given URL. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
url
- the URL to be loaded- Returns:
- a
INIConfiguration
object initialized from this file - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
iniBuilder
Creates a builder for aINIConfiguration
and initializes it with the given file to be loaded.- Parameters:
file
- the file to be loaded- Returns:
- the newly created
FileBasedConfigurationBuilder
-
iniBuilder
Creates a builder for aINIConfiguration
and initializes it with the file file identified by the given path.- Parameters:
path
- the path to the file to be loaded- Returns:
- the newly created
FileBasedConfigurationBuilder
-
iniBuilder
Creates a builder for aINIConfiguration
and initializes it with the given URL to be loaded.- Parameters:
url
- the URL to be loaded- Returns:
- the newly created
FileBasedConfigurationBuilder
-
properties
Creates aPropertiesConfiguration
instance from the content of the given file. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
file
- the file to be loaded- Returns:
- a
PropertiesConfiguration
object initialized from this file - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
properties
Creates aPropertiesConfiguration
instance from the content of the file identified by the given path. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
path
- the path to the file to be loaded- Returns:
- a
PropertiesConfiguration
object initialized from this path - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
properties
Creates aPropertiesConfiguration
instance from the content of the given URL. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
url
- the URL to be loaded- Returns:
- a
PropertiesConfiguration
object initialized from this URL - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
propertiesBuilder
Creates a builder for aPropertiesConfiguration
.- Returns:
- the newly created
FileBasedConfigurationBuilder
- Since:
- 2.6
-
propertiesBuilder
Creates a builder for aPropertiesConfiguration
and initializes it with the given file to be loaded.- Parameters:
file
- the file to be loaded- Returns:
- the newly created
FileBasedConfigurationBuilder
-
propertiesBuilder
public FileBasedConfigurationBuilder<PropertiesConfiguration> propertiesBuilder(PropertiesBuilderParameters parameters) Creates a builder for aPropertiesConfiguration
and initializes it with the given parameters to be loaded.- Parameters:
parameters
- the parameters to be loaded- Returns:
- the newly created
FileBasedConfigurationBuilder
- Since:
- 2.6
-
propertiesBuilder
Creates a builder for aPropertiesConfiguration
and initializes it with the given path to the file to be loaded.- Parameters:
path
- the path to the file to be loaded- Returns:
- the newly created
FileBasedConfigurationBuilder
-
propertiesBuilder
Creates a builder for aPropertiesConfiguration
and initializes it with the given URL to be loaded.- Parameters:
url
- the URL to be loaded- Returns:
- the newly created
FileBasedConfigurationBuilder
-
xml
Creates aXMLConfiguration
instance from the content of the given file. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
file
- the file to be loaded- Returns:
- a
XMLConfiguration
object initialized from this file - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
xml
Creates aXMLConfiguration
instance from the content of the file identified by the given path. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
path
- the path to the file to be loaded- Returns:
- a
XMLConfiguration
object initialized from this file - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
xml
Creates aXMLConfiguration
instance from the content of the given URL. This is a convenience method which can be used if no builder is needed for managing the configuration object. (Although, behind the scenes a builder is created).- Parameters:
url
- the URL to be loaded- Returns:
- a
XMLConfiguration
object initialized from this file - Throws:
ConfigurationException
- if an error occurred when loading the configuration
-
xmlBuilder
Creates a builder for aXMLConfiguration
and initializes it with the given file to be loaded.- Parameters:
file
- the file to be loaded- Returns:
- the newly created
FileBasedConfigurationBuilder
-
xmlBuilder
Creates a builder for aXMLConfiguration
and initializes it with the given path to the file to be loaded.- Parameters:
path
- the path to the file to be loaded- Returns:
- the newly created
FileBasedConfigurationBuilder
-
xmlBuilder
Creates a builder for aXMLConfiguration
and initializes it with the given URL to be loaded.- Parameters:
url
- the URL to be loaded- Returns:
- the newly created
FileBasedConfigurationBuilder
-