- java.lang.Object
-
- org.refcodes.properties.PropertiesPrecedenceComposite
-
- All Implemented Interfaces:
org.refcodes.mixin.AnnotatorAccessor
,org.refcodes.mixin.DelimiterAccessor
,org.refcodes.mixin.Dumpable
,org.refcodes.mixin.EmptyAccessor
,org.refcodes.mixin.TypeAccessor<String>
,Properties
,PropertiesPrecedence
,org.refcodes.struct.CanonicalMap
,org.refcodes.struct.Containable
,org.refcodes.struct.Dictionary<String,String>
,org.refcodes.struct.InterOperableMap<String>
,org.refcodes.struct.Keys<String,String>
,org.refcodes.struct.PathMap<String>
- Direct Known Subclasses:
PropertiesPrecedenceBuilderComposite
public class PropertiesPrecedenceComposite extends 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.mixin.AnnotatorAccessor
org.refcodes.mixin.AnnotatorAccessor.AnnotatorBuilder<B extends org.refcodes.mixin.AnnotatorAccessor.AnnotatorBuilder<B>>, org.refcodes.mixin.AnnotatorAccessor.AnnotatorMutator, org.refcodes.mixin.AnnotatorAccessor.AnnotatorProperty
-
Nested classes/interfaces inherited from interface org.refcodes.struct.CanonicalMap
org.refcodes.struct.CanonicalMap.CanonicalMapBuilder, org.refcodes.struct.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.struct.Dictionary
org.refcodes.struct.Dictionary.MutableDictionary<K extends Object,V extends Object>
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.EmptyAccessor
org.refcodes.mixin.EmptyAccessor.EmptyMutator, org.refcodes.mixin.EmptyAccessor.EmptyProperty
-
Nested classes/interfaces inherited from interface org.refcodes.struct.InterOperableMap
org.refcodes.struct.InterOperableMap.InterOperableMapBuilder<T extends Object>, org.refcodes.struct.InterOperableMap.MutableInterOperableMap<T extends Object>
-
Nested classes/interfaces inherited from interface org.refcodes.struct.Keys
org.refcodes.struct.Keys.MutableKeys<K extends Object,V extends Object>, org.refcodes.struct.Keys.MutableValues<K extends Object,V extends Object>
-
Nested classes/interfaces inherited from interface org.refcodes.struct.PathMap
org.refcodes.struct.PathMap.MutablePathMap<T extends Object>, org.refcodes.struct.PathMap.PathMapBuilder<T extends Object>
-
Nested classes/interfaces inherited from interface org.refcodes.properties.Properties
Properties.MutableProperties, Properties.PropertiesBuilder
-
Nested classes/interfaces inherited from interface org.refcodes.properties.PropertiesPrecedence
PropertiesPrecedence.MutablePropertiesPrecedence, PropertiesPrecedence.PropertiesPrecedenceBuilder
-
Nested classes/interfaces inherited from interface org.refcodes.mixin.TypeAccessor
org.refcodes.mixin.TypeAccessor.TypeBuilder<T extends Object,B extends org.refcodes.mixin.TypeAccessor.TypeBuilder<T,B>>, org.refcodes.mixin.TypeAccessor.TypeMutator<T extends Object>, org.refcodes.mixin.TypeAccessor.TypeProperty<T extends Object>
-
-
Field Summary
Fields Modifier and Type Field Description protected List<Properties>
_properties
-
Fields inherited from interface org.refcodes.properties.Properties
DEFAULT_COMMENT
-
-
Constructor Summary
Constructors Constructor Description PropertiesPrecedenceComposite(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(Object aKey)
boolean
containsProperties(Properties aProperties)
Tests whether the given properties have already been added.String
get(Object aKey)
char
getDelimiter()
Returns the default path delimiter as ofDelimiter.PATH
.boolean
isEmpty()
Set<String>
keySet()
Properties
retrieveFrom(String aFromPath)
Properties
retrieveTo(String aToPath)
int
size()
Object
toDataStructure(String aFromPath)
Collection<String>
values()
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.refcodes.struct.CanonicalMap
asArray, asArray, asArray, asArray, asBooleanArray, asBooleanArray, asBooleanArray, asBooleanArray, asByteArray, asByteArray, asByteArray, asByteArray, asCharArray, asCharArray, asCharArray, asCharArray, asDoubleArray, asDoubleArray, asDoubleArray, asDoubleArray, asFloatArray, asFloatArray, asFloatArray, asFloatArray, asIntArray, asIntArray, asIntArray, asIntArray, asLongArray, asLongArray, asLongArray, asLongArray, asShortArray, asShortArray, asShortArray, asShortArray, queryBetween, toMap, toProperties
-
Methods inherited from interface org.refcodes.struct.InterOperableMap
getBoolean, getBoolean, getBoolean, getBoolean, getBoolean, getBooleanOr, getBooleanOr, getBooleanOr, getBooleanOr, getBooleanOr, getByte, getByte, getByte, getByte, getByte, getByteOr, getByteOr, getByteOr, getByteOr, getByteOr, getChar, getChar, getChar, getChar, getChar, getCharOr, getCharOr, getCharOr, getCharOr, getCharOr, getClass, getClass, getClass, getClass, getClass, getClassOr, getClassOr, getClassOr, getClassOr, getClassOr, getDouble, getDouble, getDouble, getDouble, getDouble, getDoubleOr, getDoubleOr, getDoubleOr, getDoubleOr, getDoubleOr, getEnum, getEnum, getEnum, getEnum, getEnum, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getEnumOr, getFloat, getFloat, getFloat, getFloat, getFloat, getFloatOr, getFloatOr, getFloatOr, getFloatOr, getFloatOr, getInt, getInt, getInt, getInt, getInt, getIntOr, getIntOr, getIntOr, getIntOr, getIntOr, getLong, getLong, getLong, getLong, getLong, getLongOr, getLongOr, getLongOr, getLongOr, getLongOr, getShort, getShort, getShort, getShort, getShort, getShortOr, getShortOr, getShortOr, getShortOr, getShortOr, getString, getString, getString, getString, getString, getStringOr, getStringOr, getStringOr, getStringOr, getStringOr
-
Methods inherited from interface org.refcodes.struct.PathMap
children, children, children, children, children, children, containsKey, containsKey, containsKey, dirs, dirs, dirs, dirs, dirs, dirs, findPaths, fromExternalPath, get, get, get, getArray, getArray, getArray, getArray, getArray, getArrayIndexes, getArrayIndexes, getArrayIndexes, getArrayIndexes, getArrayIndexes, getArrayOr, getArrayOr, getArrayOr, getArrayOr, getArrayOr, getDirIndexes, getDirIndexes, getDirIndexes, getDirIndexes, getDirIndexes, getRootPath, getValueAt, getValueAt, getValueAt, getValueAt, getValueAt, getValueAt, hasChildren, hasChildren, hasChildren, hasChildren, hasChildren, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasDirAt, hasParentPath, hasPath, hasPath, hasPath, hasPath, hasSubDirs, hasSubDirs, hasSubDirs, hasSubDirs, hasValue, hasValue, hasValue, hasValue, hasValue, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, hasValueAt, isArray, isArray, isArray, isArray, isArray, isArray, isChild, isChild, isChild, isChild, isDir, isDir, isDir, isDir, isDir, isEqualTo, isIndexDir, isIndexDir, isIndexDir, isIndexDir, isIndexDir, isLeaf, isLeaf, isLeaf, isLeaf, isLeaf, isRootPath, keySet, keySet, keySet, keySet, keySet, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastArrayIndex, lastDirIndex, lastDirIndex, lastDirIndex, lastDirIndex, lastDirIndex, lastDirIndex, leaves, leaves, leaves, leaves, leaves, leaves, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextArrayIndex, nextDirIndex, nextDirIndex, nextDirIndex, nextDirIndex, nextDirIndex, nextDirIndex, paths, paths, paths, paths, paths, paths, queryPaths, queryPaths, queryPaths, queryPaths, queryPaths, queryPaths, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, sortedKeys, toDataStructure, toExternalPath, toInstance, toInstance, toLeaf, toMap, toNormalizedPath, toParentPath, toPath, toPath, toPath, toPath, toPathElements, toPathList, toPathStack, toPropertyPath, toType, toType, toType, toType, toType, toType, toType, toType
-
Methods inherited from interface org.refcodes.properties.Properties
containsValue, getAnnotator, getDir, getDir, getDir, getDir, getDir, getDirAt, getDirAt, getDirAt, getDirAt, getDirAt, getDirAt, getDirs, getDirs, getDirs, getDirs, getDirs, getType, query, query, query, query, query, queryBetween, queryBetween, queryBetween, queryBetween, queryBetween, queryFrom, queryFrom, queryFrom, queryFrom, queryFrom, queryFrom, queryTo, queryTo, queryTo, queryTo, queryTo, queryTo, retrieveBetween, retrieveBetween, retrieveBetween, retrieveBetween, retrieveBetween, retrieveFrom, retrieveFrom, retrieveFrom, retrieveFrom, retrieveTo, retrieveTo, retrieveTo, retrieveTo
-
-
-
-
Field Detail
-
_properties
protected 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(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
-
containsProperties
public boolean containsProperties(Properties aProperties)
Tests whether the given properties have already been added.- Specified by:
containsProperties
in interfacePropertiesPrecedence
- Parameters:
aProperties
- TheProperties
to be tested for being already contained or not.- Returns:
- True if the given
Properties
are already contained in thePropertiesPrecedence
instance.
-
toDataStructure
public Object toDataStructure(String aFromPath)
- Specified by:
toDataStructure
in interfaceorg.refcodes.struct.PathMap<String>
-
containsKey
public boolean containsKey(Object aKey)
-
values
public Collection<String> values()
-
size
public int size()
- Specified by:
size
in interfaceorg.refcodes.struct.Containable
-
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty
in interfaceorg.refcodes.mixin.EmptyAccessor
-
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(String aFromPath)
- Specified by:
retrieveFrom
in interfaceorg.refcodes.struct.CanonicalMap
- Specified by:
retrieveFrom
in interfaceorg.refcodes.struct.PathMap<String>
- Specified by:
retrieveFrom
in interfaceProperties
-
retrieveTo
public Properties retrieveTo(String aToPath)
- Specified by:
retrieveTo
in interfaceorg.refcodes.struct.CanonicalMap
- Specified by:
retrieveTo
in interfaceorg.refcodes.struct.PathMap<String>
- Specified by:
retrieveTo
in interfaceProperties
-
-