Package com.mchange.v2.cfg
Class MultiPropertiesConfig
- java.lang.Object
-
- com.mchange.v2.cfg.MultiPropertiesConfig
-
- All Implemented Interfaces:
PropertiesConfig
- Direct Known Subclasses:
HoconMultiPropertiesConfig
public abstract class MultiPropertiesConfig extends java.lang.Object implements PropertiesConfig
MultiPropertiesConfig allows applications to accept configuration data from a more than one property file (each of which is to be loaded from a unique path using this class' ClassLoader's resource-loading mechanism), and permits access to property data via the resource path from which the properties were loaded, via the prefix of the property (where hierarchical property names are presumed to be '.'-separated), and simply by key. In the by-key and by-prefix indices, when two definitions conflict, the key value pairing specified in the MOST RECENT properties file shadows earlier definitions, and files are loaded in the order of the list of resource paths provided a constructor. The resource path "/" is a special case that always refers to System properties. No actual resource will be loaded. If the mchange-hocon-bridge jar file is available, resource paths specified as "hocon:/path/to/resource" will be parsed as HOCON, whenever values can be interpreted as Strings. The class manages a special instance called "vmConfig" which is accessable via a static method. It's resource path is list specified by a text-file, itself a ClassLoader managed resource, which may be located at /com/mchange/v2/cfg/vmConfigResourcePaths.txt or /mchange-config-resource-paths.txt. This file should be one resource path per line, with blank lines ignored and lines beginning with '#' treated as comments. If no text file of resource paths are available, the following resources are checked: "/mchange-commons.properties", "hocon:/reference,/application,/", "/" See HoconPropertiesConfigSource for information on HOCON identifiers.
-
-
Constructor Summary
Constructors Constructor Description MultiPropertiesConfig()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static MultiPropertiesConfig
fromProperties(java.lang.String notionalResourcePath, java.util.Properties props)
static MultiPropertiesConfig
fromProperties(java.util.Properties props)
abstract java.util.List
getDelayedLogItems()
abstract java.util.Properties
getPropertiesByPrefix(java.lang.String pfx)
The special prefix "" returns all the Propertiesabstract java.util.Properties
getPropertiesByResourcePath(java.lang.String path)
abstract java.lang.String[]
getPropertiesResourcePaths()
abstract java.lang.String
getProperty(java.lang.String key)
static MultiPropertiesConfig
readVmConfig()
Deprecated.Please use the MConfig facade class to acquire configurationstatic MultiPropertiesConfig
readVmConfig(java.lang.String[] defaultResources, java.lang.String[] preemptingResources)
Deprecated.Please use the MConfig facade class to acquire configuration
-
-
-
Method Detail
-
readVmConfig
public static MultiPropertiesConfig readVmConfig(java.lang.String[] defaultResources, java.lang.String[] preemptingResources)
Deprecated.Please use the MConfig facade class to acquire configuration
-
readVmConfig
public static MultiPropertiesConfig readVmConfig()
Deprecated.Please use the MConfig facade class to acquire configuration
-
fromProperties
public static MultiPropertiesConfig fromProperties(java.lang.String notionalResourcePath, java.util.Properties props)
-
fromProperties
public static MultiPropertiesConfig fromProperties(java.util.Properties props)
-
getPropertiesResourcePaths
public abstract java.lang.String[] getPropertiesResourcePaths()
-
getPropertiesByResourcePath
public abstract java.util.Properties getPropertiesByResourcePath(java.lang.String path)
-
getPropertiesByPrefix
public abstract java.util.Properties getPropertiesByPrefix(java.lang.String pfx)
The special prefix "" returns all the Properties- Specified by:
getPropertiesByPrefix
in interfacePropertiesConfig
-
getProperty
public abstract java.lang.String getProperty(java.lang.String key)
- Specified by:
getProperty
in interfacePropertiesConfig
-
getDelayedLogItems
public abstract java.util.List getDelayedLogItems()
-
-