A Config
that loads key/value pairs from an args array.
A Config
that loads key/value pairs from an args array.
Only elements that contain a separator char (defined by
ArgsConfig.SeparatorChar
) are considered as a key/value pair. The substring
before the first separator char is the key, everything after it is the value
(even if contains more separator chars).
Elements not consumed by this rule can be retrieved by the remaining
array.
According to the rule, one or both parts of a key/value pair may be the empty string.
A Config
that loads key/value pairs from a resource bundle
A Config
that loads key/value pairs from a resource bundle
If some I/O or other exception occurs when loading the bundle, the
resulting Config
is empty.
All values must be strings.
,The base name must identify a resource bundle according to the
java.util.ResourceBundle
class.
An immutable type that provides configuration properties as a map of key/value pairs.
An immutable type that provides configuration properties as a map of key/value pairs.
This variant of the source code is for Scala up until version 2.12.
A Config
that loads key/value pairs from a single properties file.
A Config
that loads key/value pairs from a single properties file.
If some I/O or other exception occurs when loading the file, the
resulting Config
is empty.
The content of the file must conform to the
java.util.Properties#load(InputStream)
method.
A Config
that represents the system environment.
A Config
that represents the system environment.
If a security manager exists and doesn't allow access to the process environment, this config object is empty.
,The system may not support environment variables. In this case, this config object is empty.
A Config
that represents the system properties of the JVM.
A Config
that represents the system properties of the JVM.
If a security manager exists and doesn't allow access to the system properties, this config object is empty.
This package provides various configuration sources under a common trait
Config
, which is basically an immutable map. The following implementations are available:-
ArgsConfig
loads key/value pairs from an array of strings: array elements that contain a separator char (defined byArgsConfig.SeparatorChar
) are considered as key/value pairs, while elements not consumed by this rule can be retrieved by theremaining
array (makes it suitable to scan a command line for such key/value pairs and parsing the rest with tools like described in [U1 Command-Line Interface](#u1-command-line-interface).-
FileConfig
loads key/value pairs from a specified resource file which must conform to thejava.util.Properties#load(InputStream)
method; there is also a factory method where the resource is looked up under the modified package name of a specified class.-
BundleConfig
loads key/value pairs from a resource bundle (according to thejava.util.ResourceBundle
class) of a specified base name using a locale option; there is also a factory method where the resource bundle is looked up under the modified package name of a specified class.*
SystemPropertiesConfig
is aConfig
object that represents the system properties of the JVM.*
SystemEnvironmentConfig
is aConfig
object that represents the system environment; note that the system may not support environment variables -- in this case, this object is empty.Multiple
Config
s can be combined using the standard map++
operators, yielding an overallConfig
.