Package org.refcodes.configuration
Class PropertiesPrecedenceComposite
- java.lang.Object
-
- org.refcodes.configuration.PropertiesPrecedenceComposite
-
- All Implemented Interfaces:
Properties
,PropertiesPrecedence
,org.refcodes.mixin.DelimiterAccessor
,org.refcodes.mixin.Dumpable
,org.refcodes.mixin.TypeAccessor<java.lang.String>
,org.refcodes.structure.CanonicalMap
,org.refcodes.structure.Containable
,org.refcodes.structure.Dictionary<java.lang.String,T>
,org.refcodes.structure.Keys<java.lang.String,T>
,org.refcodes.structure.PathMap<java.lang.String>
,org.refcodes.structure.PropertiesAccessorMixin
- Direct Known Subclasses:
PropertiesPrecedenceBuilderComposite
public class PropertiesPrecedenceComposite extends java.lang.Object implements PropertiesPrecedence
Retrieve properties from various different properties sources (Properties
instances) by querying all the herein containedProperties
instances in the order of them being added. Queried properties of the firstProperties
instance containing them are returned.Properties
instances before have a higher precedence than the instances added next.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.refcodes.structure.CanonicalMap
org.refcodes.structure.CanonicalMap.CanonicalMapBuilder, org.refcodes.structure.CanonicalMap.MutableCanonicalMap
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.DelimiterAccessor
org.refcodes.mixin.DelimiterAccessor.DelimiterBuilder<B extends org.refcodes.mixin.DelimiterAccessor.DelimiterBuilder<B>>, org.refcodes.mixin.DelimiterAccessor.DelimiterMutator, org.refcodes.mixin.DelimiterAccessor.DelimiterProperty
-
Nested classes/interfaces inherited from interface org.refcodes.structure.Dictionary
org.refcodes.structure.Dictionary.MutableDictionary<K extends java.lang.Object,V extends java.lang.Object>
-
Nested classes/interfaces inherited from interface org.refcodes.structure.Keys
org.refcodes.structure.Keys.MutableKeys<K extends java.lang.Object,V extends java.lang.Object>, org.refcodes.structure.Keys.MutableValues<K extends java.lang.Object,V extends java.lang.Object>
-
Nested classes/interfaces inherited from interface org.refcodes.structure.PathMap
org.refcodes.structure.PathMap.MutablePathMap<T extends java.lang.Object>, org.refcodes.structure.PathMap.PathMapBuilder<T extends java.lang.Object>
-
Nested classes/interfaces inherited from interface org.refcodes.configuration.Properties
Properties.MutableProperties, Properties.PropertiesBuilder
-
Nested classes/interfaces inherited from interface org.refcodes.structure.PropertiesAccessorMixin
org.refcodes.structure.PropertiesAccessorMixin.PropertiesBuilderMixin<T extends java.lang.Object>, org.refcodes.structure.PropertiesAccessorMixin.PropertiesMixin, org.refcodes.structure.PropertiesAccessorMixin.PropertiesMutatorMixin
-
Nested classes/interfaces inherited from interface org.refcodes.configuration.PropertiesPrecedence
PropertiesPrecedence.MutablePropertiesPrecedence, PropertiesPrecedence.PropertiesPrecedenceBuilder
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.List<Properties>
_properties
-
Fields inherited from interface org.refcodes.configuration.Properties
DEFAULT_COMMENT
-
-
Constructor Summary
Constructors Constructor Description PropertiesPrecedenceComposite(java.util.List<Properties> aProperties)
Creates aPropertiesPrecedence
composite querying the providedProperties
in the given order.PropertiesPrecedenceComposite(Properties... aProperties)
Creates aPropertiesPrecedence
composite querying the providedProperties
in the given order.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
containsKey(java.lang.Object aKey)
java.lang.String
get(java.lang.Object aKey)
char
getDelimiter()
Returns the default path delimiter as ofDelimiter.PATH
.boolean
isEmpty()
java.util.Set<java.lang.String>
keySet()
Properties
retrieveFrom(java.lang.String aFromPath)
Properties
retrieveTo(java.lang.String aToPath)
int
size()
java.lang.Object
toDataStructure(java.lang.String aFromPath)
java.util.Collection<java.lang.String>
values()
-
Methods inherited from interface org.refcodes.structure.CanonicalMap
toInstance, toInstance, toType, toType
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.refcodes.structure.PathMap
children, children, children, directories, directories, directories, directories, directories, fromExternalKey, get, get, getArray, getArray, getBoolean, getBoolean, getByte, getByte, getCharacter, getCharacter, getDouble, getDouble, getFloat, getFloat, getIndexes, getIndexes, getInteger, getInteger, getLong, getLong, getRootPath, getShort, getShort, hasChildren, hasChildren, hasChildren, hasIndexed, hasIndexed, hasParentPath, isArray, isArray, isArray, isArray, isArray, isChild, isChild, isChild, isDirectory, isDirectory, isDirectory, isDirectory, isIndexed, isIndexed, isPath, isRecord, isRecord, isRecord, isRecord, isRootPath, keySet, paths, paths, paths, paths, paths, queryPaths, records, records, records, records, records, toDataStructure, toExternalKey, toMap, toNormalizedPath, toNormalizedPath, toParentPath, toPath, toPath
-
Methods inherited from interface org.refcodes.configuration.Properties
containsValue, getIndexed, getIndexed, getType, query, query, queryFrom, queryTo, retrieve, retrieveFrom, retrieveFrom, retrieveFrom, retrieveTo, retrieveTo, retrieveTo, toMap, toProperties, toPropertyPath
-
Methods inherited from interface org.refcodes.structure.PropertiesAccessorMixin
asArray, asArray, asArray, asArray, asArray, asArray, asBooleanArray, asBooleanArray, asBooleanArray, asBooleanArray, asBooleanArray, asBooleanArray, asByteArray, asByteArray, asByteArray, asByteArray, asByteArray, asByteArray, asCharacterArray, asCharacterArray, asCharacterArray, asCharacterArray, asCharacterArray, asCharacterArray, asDoubleArray, asDoubleArray, asDoubleArray, asDoubleArray, asDoubleArray, asDoubleArray, asFloatArray, asFloatArray, asFloatArray, asFloatArray, asFloatArray, asFloatArray, asIntegerArray, asIntegerArray, asIntegerArray, asIntegerArray, asIntegerArray, asIntegerArray, asLongArray, asLongArray, asLongArray, asLongArray, asLongArray, asLongArray, asShortArray, asShortArray, asShortArray, asShortArray, asShortArray, asShortArray, containsKey, get, getBoolean, getBoolean, getBoolean, getByte, getByte, getByte, getCharacter, getCharacter, getCharacter, getDouble, getDouble, getDouble, getFloat, getFloat, getFloat, getInteger, getInteger, getInteger, getLong, getLong, getLong, getShort, getShort, getShort, use, useBoolean, useBoolean, useByte, useByte, useDouble, useDouble, useFloat, useFloat, useInteger, useInteger, useLong, useLong, useShort, useShort
-
-
-
-
Field Detail
-
_properties
protected java.util.List<Properties> _properties
-
-
Constructor Detail
-
PropertiesPrecedenceComposite
public PropertiesPrecedenceComposite(Properties... aProperties)
Creates aPropertiesPrecedence
composite querying the providedProperties
in the given order. Queried properties of the firstProperties
instance containing them are returned.Properties
before have a higher precedence overProperties
provided next.- Parameters:
aProperties
- TheProperties
to be queried in the provided order.
-
PropertiesPrecedenceComposite
public PropertiesPrecedenceComposite(java.util.List<Properties> aProperties)
Creates aPropertiesPrecedence
composite querying the providedProperties
in the given order. Queried properties of the firstProperties
instance containing them are returned.Properties
before have a higher precedence overProperties
provided next.- Parameters:
aProperties
- TheProperties
to be queried in the provided order.
-
-
Method Detail
-
toDataStructure
public java.lang.Object toDataStructure(java.lang.String aFromPath)
- Specified by:
toDataStructure
in interfaceorg.refcodes.structure.PathMap<java.lang.String>
-
containsKey
public boolean containsKey(java.lang.Object aKey)
- Specified by:
containsKey
in interfaceorg.refcodes.structure.Keys<java.lang.String,T extends java.lang.Object>
-
get
public java.lang.String get(java.lang.Object aKey)
- Specified by:
get
in interfaceorg.refcodes.structure.Keys<java.lang.String,T extends java.lang.Object>
-
keySet
public java.util.Set<java.lang.String> keySet()
- Specified by:
keySet
in interfaceorg.refcodes.structure.Keys<java.lang.String,T extends java.lang.Object>
-
values
public java.util.Collection<java.lang.String> values()
- Specified by:
values
in interfaceorg.refcodes.structure.Keys<java.lang.String,T extends java.lang.Object>
-
size
public int size()
- Specified by:
size
in interfaceorg.refcodes.structure.Containable
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interfaceorg.refcodes.structure.Containable
-
getDelimiter
public char getDelimiter()
Returns the default path delimiter as ofDelimiter.PATH
.- Specified by:
getDelimiter
in interfaceorg.refcodes.mixin.DelimiterAccessor
- Specified by:
getDelimiter
in interfaceProperties
-
retrieveFrom
public Properties retrieveFrom(java.lang.String aFromPath)
- Specified by:
retrieveFrom
in interfaceorg.refcodes.structure.CanonicalMap
- Specified by:
retrieveFrom
in interfaceorg.refcodes.structure.PathMap<java.lang.String>
- Specified by:
retrieveFrom
in interfaceProperties
-
retrieveTo
public Properties retrieveTo(java.lang.String aToPath)
- Specified by:
retrieveTo
in interfaceorg.refcodes.structure.CanonicalMap
- Specified by:
retrieveTo
in interfaceorg.refcodes.structure.PathMap<java.lang.String>
- Specified by:
retrieveTo
in interfaceProperties
-
-