Class PropertiesImpl

java.lang.Object
org.refcodes.properties.PropertiesImpl
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, 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:
ArgsProperties

public class PropertiesImpl extends Object implements Properties
The Class PropertiesImpl.
  • 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.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
     

    Fields inherited from interface org.refcodes.struct.PathMap

    ANNOTATOR, DELIMITER

    Fields inherited from interface org.refcodes.properties.Properties

    DEFAULT_COMMENT
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates an empty immutable Properties object.
    Create a Properties instance containing the elements as of PathMap.MutablePathMap.insert(Object) using the default path delimiter "/" (Delimiter.PATH) for the path declarations: "Inspects the given object and adds all elements found in the given object.
    PropertiesImpl(Map<?,?> aProperties)
    Create a Properties instance containing the elements of the provided Map instance using the default path delimiter "/" (Delimiter.PATH) for the path declarations
    Create a Properties instance containing the elements of the provided Properties instance using the default path delimiter "/" (Delimiter.PATH) for the path declarations
    PropertiesImpl(org.refcodes.struct.Property... aProperties)
    Create a Properties instance containing the provided Property instances' key/value-pairs.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    boolean
    get(Object aKey)
    char
    Returns the default path delimiter as of Delimiter.PATH.
    int
    boolean
    retrieveFrom(String aFromPath)
    retrieveTo(String aToPath)
    int

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, 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.mixin.Dumpable

    toDump, toDump

    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.Keys

    getOr, use

    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, toPrintable, toPropertyPath, toType, toType, toType, toType, toType, toType, toType, toType
  • Field Details

  • Constructor Details

    • PropertiesImpl

      public PropertiesImpl()
      Creates an empty immutable Properties object.
    • PropertiesImpl

      public PropertiesImpl(Object aObj)
      Create a Properties instance containing the elements as of PathMap.MutablePathMap.insert(Object) using the default path delimiter "/" (Delimiter.PATH) for the path declarations: "Inspects the given object and adds all elements found in the given object. Elements of type Map, Collection and arrays are identified and handled as of their type: The path for each value in a Map is appended with its according key. The path for each value in a Collection or array is appended with its according index of occurrence (in case of a List or an array, its actual index). In case of reflection, the path for each member is appended with its according mamber's name. All elements (e.g. the members and values) are inspected recursively which results in the according paths of the terminating values."
      Parameters:
      aObj - The object from which the elements are to be added.
    • PropertiesImpl

      public PropertiesImpl(Properties aProperties)
      Create a Properties instance containing the elements of the provided Properties instance using the default path delimiter "/" (Delimiter.PATH) for the path declarations
      Parameters:
      aProperties - the properties to be added.
    • PropertiesImpl

      public PropertiesImpl(Map<?,?> aProperties)
      Create a Properties instance containing the elements of the provided Map instance using the default path delimiter "/" (Delimiter.PATH) for the path declarations
      Parameters:
      aProperties - the properties to be added.
    • PropertiesImpl

      public PropertiesImpl(org.refcodes.struct.Property... aProperties)
      Create a Properties instance containing the provided Property instances' key/value-pairs.
      Parameters:
      aProperties - the properties to be added.
  • Method Details

    • containsKey

      public boolean containsKey(Object aKey)
      Specified by:
      containsKey in interface org.refcodes.struct.Keys<String,String>
    • get

      public String get(Object aKey)
      Specified by:
      get in interface org.refcodes.struct.Keys<String,String>
    • keySet

      public Set<String> keySet()
      Specified by:
      keySet in interface org.refcodes.struct.Keys<String,String>
    • values

      public Collection<String> values()
      Specified by:
      values in interface org.refcodes.struct.Keys<String,String>
    • size

      public int size()
      Specified by:
      size in interface org.refcodes.struct.Containable
    • isEmpty

      public boolean isEmpty()
      Specified by:
      isEmpty in interface org.refcodes.mixin.EmptyAccessor
    • retrieveFrom

      public Properties retrieveFrom(String aFromPath)
      Specified by:
      retrieveFrom in interface org.refcodes.struct.CanonicalMap
      Specified by:
      retrieveFrom in interface org.refcodes.struct.PathMap<String>
      Specified by:
      retrieveFrom in interface Properties
    • retrieveTo

      public Properties retrieveTo(String aToPath)
      Specified by:
      retrieveTo in interface org.refcodes.struct.CanonicalMap
      Specified by:
      retrieveTo in interface org.refcodes.struct.PathMap<String>
      Specified by:
      retrieveTo in interface Properties
    • getDelimiter

      public char getDelimiter()
      Returns the default path delimiter as of Delimiter.PATH.
      Specified by:
      getDelimiter in interface org.refcodes.mixin.DelimiterAccessor
      Specified by:
      getDelimiter in interface Properties
    • getType

      public Class<String> getType()
      Specified by:
      getType in interface Properties
      Specified by:
      getType in interface org.refcodes.mixin.TypeAccessor<String>
    • toDataStructure

      public Object toDataStructure(String aFromPath)
      Specified by:
      toDataStructure in interface org.refcodes.struct.PathMap<String>
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object