Package com.suse.common.configuration
Class FileConfigurationSource
- java.lang.Object
-
- com.suse.common.configuration.BaseConfigurationSource
-
- com.suse.common.configuration.FileConfigurationSource
-
- All Implemented Interfaces:
ConfigurationSource
public class FileConfigurationSource extends BaseConfigurationSource
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.StringcommonFilePrefixprivate static java.util.Comparator<java.nio.file.Path>CONFIG_PATH_COMPARATORprivate java.util.PropertiesconfigValuesprivate java.util.List<java.lang.String>fallbackNamespacesprivate static org.apache.logging.log4j.LoggerLOGGER
-
Constructor Summary
Constructors Constructor Description FileConfigurationSource(java.util.List<java.nio.file.Path> fileSourcesIn)Builds a file configuration source.FileConfigurationSource(java.util.List<java.nio.file.Path> fileSourcesIn, java.lang.String filePrefixIn)Builds a file configuration source.FileConfigurationSource(java.util.List<java.nio.file.Path> fileSourcesIn, java.lang.String filePrefixIn, java.util.List<java.lang.String> fallbackNamespacesIn)Builds a file configuration source.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static java.util.stream.Stream<java.nio.file.Path>getConfigurationStream(java.util.List<java.nio.file.Path> locationsList)java.util.Set<java.lang.String>getPropertyNames()Retrieves the names of all the available properties.protected java.lang.StringgetRawValue(java.lang.String property)Get the configuration entry for given propertyprivate java.util.PropertiesloadProperties(java.nio.file.Path file)private java.lang.StringmakeNamespace(java.nio.file.Path path)-
Methods inherited from class com.suse.common.configuration.BaseConfigurationSource
convertTo, getBoolean, getDouble, getFloat, getInteger, getList, getLong, getString, toProperties
-
-
-
-
Field Detail
-
CONFIG_PATH_COMPARATOR
private static final java.util.Comparator<java.nio.file.Path> CONFIG_PATH_COMPARATOR
-
LOGGER
private static final org.apache.logging.log4j.Logger LOGGER
-
fallbackNamespaces
private final java.util.List<java.lang.String> fallbackNamespaces
-
commonFilePrefix
private final java.lang.String commonFilePrefix
-
configValues
private final java.util.Properties configValues
-
-
Constructor Detail
-
FileConfigurationSource
public FileConfigurationSource(java.util.List<java.nio.file.Path> fileSourcesIn)
Builds a file configuration source.- Parameters:
fileSourcesIn- List of files and directories to process
-
FileConfigurationSource
public FileConfigurationSource(java.util.List<java.nio.file.Path> fileSourcesIn, java.lang.String filePrefixIn)Builds a file configuration source.- Parameters:
fileSourcesIn- List of files and directories to processfilePrefixIn- a common prefix used by all configuration file names
-
FileConfigurationSource
public FileConfigurationSource(java.util.List<java.nio.file.Path> fileSourcesIn, java.lang.String filePrefixIn, java.util.List<java.lang.String> fallbackNamespacesIn)Builds a file configuration source.- Parameters:
fileSourcesIn- List of files and directories to processfilePrefixIn- a common prefix used by all configuration file namesfallbackNamespacesIn- namespaces to search for, in the given order. These are used when a property, specified with no namespace, was not found.
-
-
Method Detail
-
getRawValue
protected java.lang.String getRawValue(java.lang.String property)
Get the configuration entry for given property- Specified by:
getRawValuein classBaseConfigurationSource- Parameters:
property- string to get the value of- Returns:
- the value
-
getPropertyNames
public java.util.Set<java.lang.String> getPropertyNames()
Description copied from interface:ConfigurationSourceRetrieves the names of all the available properties.- Returns:
- the set of property names
-
getConfigurationStream
private static java.util.stream.Stream<java.nio.file.Path> getConfigurationStream(java.util.List<java.nio.file.Path> locationsList)
-
loadProperties
private java.util.Properties loadProperties(java.nio.file.Path file)
-
makeNamespace
private java.lang.String makeNamespace(java.nio.file.Path path)
-
-