Interface ImmutableCanonicalTable.MutableCanonicalTable

All Superinterfaces:
org.refcodes.mixin.AnnotatorAccessor, org.refcodes.mixin.Clearable, Containable, org.refcodes.mixin.DelimiterAccessor, org.refcodes.mixin.EmptyAccessor, ImmutableCanonicalTable, ImmutableInterOperableTable<String>, ImmutableInterOperableTable.MutableInterOperableTable<String>, ImmutablePathTable<String>, ImmutablePathTable.MutablePathTable<String>, ImmutableTable<String,String>, ImmutableTable.MutableTable<String,String>, Keys<String,String>, Keys.MutableKeys<String,String>, Keys.MutableValues<String,String>, Map<String,String>, org.refcodes.mixin.TypeAccessor<String>
All Known Subinterfaces:
CanonicalTable
All Known Implementing Classes:
MapCanonicalTable
Enclosing interface:
ImmutableCanonicalTable

public static interface ImmutableCanonicalTable.MutableCanonicalTable extends ImmutableCanonicalTable, ImmutableInterOperableTable.MutableInterOperableTable<String>, Map<String,String>
The ImmutableCanonicalTable.MutableCanonicalTable type extends the ImmutableCanonicalTable with mutable (writable) functionality and provides default mutator methods for supporting primitive data types.
  • Method Details

    • containsValue

      default boolean containsValue(Object value)
      This method is defined for the sake of Map conformity. Tests whether the provided value has a key assigned.
      Specified by:
      containsValue in interface ImmutableCanonicalTable
      Specified by:
      containsValue in interface ImmutableInterOperableTable.MutableInterOperableTable<String>
      Specified by:
      containsValue in interface Keys<String,String>
      Specified by:
      containsValue in interface Map<String,String>
      Parameters:
      value - The value to test if a key references this value.
      Returns:
      True in case the given value is referenced by a key.
    • insert

      default void insert(ImmutableCanonicalTable aFrom)
      Method to semantically emphasize that we support our own types. Actually delegates to ImmutablePathTable.MutablePathTable.insert(Object).
      Parameters:
      aFrom - The ImmutableCanonicalTable which is to be inspected with the therein contained values being added with their according determined paths.
    • insertBetween

      default void insertBetween(String aToPath, ImmutableCanonicalTable aFrom, String aFromPath)
      Method to semantically emphasize that we support our own types. Actually delegates to ImmutablePathTable.MutablePathTable.insertBetween(String, Object, String).
      Parameters:
      aToPath - The sub-path where to insert the object's introspected values to.
      aFrom - The ImmutableCanonicalTable which is to be inspected with the therein contained values being added with their according determined paths.
      aFromPath - The path from where to start adding elements of the provided object.
    • insertFrom

      default void insertFrom(ImmutableCanonicalTable aFrom, String aFromPath)
      Method to semantically emphasize that we support our own types. Actually delegates to ImmutablePathTable.MutablePathTable.insertFrom(Object, String).
      Parameters:
      aFrom - The ImmutableCanonicalTable which is to be inspected with the therein contained values being added with their according determined paths.
      aFromPath - The path from where to start adding elements of the provided object.
    • insertTo

      default void insertTo(String aToPath, ImmutableCanonicalTable aFrom)
      Method to semantically emphasize that we support our own types. Actually delegates to ImmutablePathTable.MutablePathTable.insertTo(String, Object).
      Parameters:
      aToPath - The sub-path where to insert the object's introspected values to.
      aFrom - The ImmutableCanonicalTable which is to be inspected with the therein contained values being added with their according determined paths.
    • put

      default String put(Object aKey, String aValue)
      Adds the given element related to the given key. As the key passed is an enumeration, the Enum.toString() method is used on the enumeration to resolve the enumeration to a {link String} key.
      Parameters:
      aKey - The key for which to add the element.
      aValue - The value to be related with the given key.
      Returns:
      The value being replaced by the provided value or null if none value has been replaced.
    • put

      default String put(Object[] aPathElements, String aValue)
      Puts the given value into the child's path, relative to the given parent's path.
      Specified by:
      put in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The path elements of the path relative to which to put the value.
      aValue - The value to be added.
      Returns:
      The replaced value in case a value has already been set for the resulting path, or null.
    • put

      default String put(Property aProperty)
      Puts the key/value-pair from the provided Property.
      Parameters:
      aProperty - The property's key/value to be inserted.
      Returns:
      The property value overwritten by the provided property.
    • put

      default String put(Relation<String,String> aRelation)
      Adds the given element related to the given key.
      Specified by:
      put in interface ImmutablePathTable.MutablePathTable<String>
      Specified by:
      put in interface ImmutableTable.MutableTable<String,String>
      Parameters:
      aRelation - the relation
      Returns:
      The value being replaced by the provided value or null if none value has been replaced.
    • put

      default String put(String[] aPathElements, String aValue)
      Puts the given value into the child's path, relative to the given parent's path.
      Specified by:
      put in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The path elements of the path relative to which to put the value.
      aValue - The value to be added.
      Returns:
      The replaced value in case a value has already been set for the resulting path, or null.
    • putAll

      default void putAll(ImmutableCanonicalTable aProperties)
      This method inserts all elements (key/value-pairs) found in the provided ImmutableCanonicalTable instances of interoperability reasons.
      Parameters:
      aProperties - A ImmutableCanonicalTable containing the key/value pairs to be inserted.
    • putAll

      default void putAll(Properties aProperties)
      This method inserts all elements (key/value-pairs) found in the provided Properties instances of interoperability reasons.
      Parameters:
      aProperties - A Properties containing the key/value-pairs to be inserted.
    • putAll

      default void putAll(Map<? extends String,? extends String> aProperties)
      Specified by:
      putAll in interface Map<String,String>
    • putDirAt

      default CanonicalTable putDirAt(Collection<?> aPathElements, int aIndex, Object aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The path elements of the path where to put the indexed element.
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • putDirAt

      default CanonicalTable putDirAt(Collection<?> aPathElements, int aIndex, ImmutablePathTable<String> aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The path elements of the path where to put the indexed element.
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • putDirAt

      default CanonicalTable putDirAt(int aIndex, Object aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the root path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • putDirAt

      default CanonicalTable putDirAt(int aIndex, ImmutablePathTable<String> aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the root path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • putDirAt

      default CanonicalTable putDirAt(Object aPath, int aIndex, Object aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPath - The path where to put the indexed element.
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • putDirAt

      default CanonicalTable putDirAt(Object aPath, int aIndex, ImmutablePathTable<String> aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPath - The path where to put the indexed element.
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • putDirAt

      default CanonicalTable putDirAt(Object[] aPathElements, int aIndex, Object aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The path elements of the path where to put the indexed element.
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • putDirAt

      default CanonicalTable putDirAt(Object[] aPathElements, int aIndex, ImmutablePathTable<String> aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The path elements of the path where to put the indexed element.
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • putDirAt

      default CanonicalTable putDirAt(String aPath, int aIndex, Object aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPath - The path where to put the indexed element.
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • putDirAt

      default CanonicalTable putDirAt(String aPath, int aIndex, ImmutablePathTable<String> aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPath - The path where to put the indexed element.
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • putDirAt

      default CanonicalTable putDirAt(String[] aPathElements, int aIndex, Object aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The path elements of the path where to put the indexed element.
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • putDirAt

      default CanonicalTable putDirAt(String[] aPathElements, int aIndex, ImmutablePathTable<String> aDir)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Puts the given values below the path at the given index.
      Specified by:
      putDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The path elements of the path where to put the indexed element.
      aIndex - The index of the indexed element.
      aDir - The values to be put at the index.
      Returns:
      The directory which has been replaced by the given directory.
    • removeAll

      default CanonicalTable removeAll(Collection<?> aPathQueryElements)
      Removes all elements which's keys match the provided path query. Queries the keys of the instance using the PathMatcher' matching patterns, similar to the wildcards '*', '?' and '**' known when querying folders of a filesystem: The PathMatcher applies the following rules from the ANT path pattern to the query provided: A single asterisk ("*" as of Wildcard.FILE) matches zero or more characters within a path name. A double asterisk ("**" as of Wildcard.PATH) matches zero or more characters across directory levels. A question mark ("?" as of Wildcard.CHAR) matches exactly one character within a path name. The single asterisk ("*" as of Wildcard.FILE), the double asterisk ("**" as of Wildcard.PATH) and the question mark ("?" as of Wildcard.CHAR) we refer to as wildcards.
      Specified by:
      removeAll in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathQueryElements - The elements representing your path query including your wildcards.
      Returns:
      The removed properties.
    • removeAll

      default CanonicalTable removeAll(Object... aPathQueryElements)
      Removes all elements which's keys match the provided path query. Queries the keys of the instance using the PathMatcher' matching patterns, similar to the wildcards '*', '?' and '**' known when querying folders of a filesystem: The PathMatcher applies the following rules from the ANT path pattern to the query provided: A single asterisk ("*" as of Wildcard.FILE) matches zero or more characters within a path name. A double asterisk ("**" as of Wildcard.PATH) matches zero or more characters across directory levels. A question mark ("?" as of Wildcard.CHAR) matches exactly one character within a path name. The single asterisk ("*" as of Wildcard.FILE), the double asterisk ("**" as of Wildcard.PATH) and the question mark ("?" as of Wildcard.CHAR) we refer to as wildcards.
      Specified by:
      removeAll in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathQueryElements - The elements representing your path query including your wildcards.
      Returns:
      The removed properties.
    • removeAll

      default CanonicalTable removeAll(Object aPathQuery)
      Removes all elements which's keys match the provided path query. Queries the keys of the instance using the PathMatcher' matching patterns, similar to the wildcards '*', '?' and '**' known when querying folders of a filesystem: The PathMatcher applies the following rules from the ANT path pattern to the query provided: A single asterisk ("*" as of Wildcard.FILE) matches zero or more characters within a path name. A double asterisk ("**" as of Wildcard.PATH) matches zero or more characters across directory levels. A question mark ("?" as of Wildcard.CHAR) matches exactly one character within a path name. The single asterisk ("*" as of Wildcard.FILE), the double asterisk ("**" as of Wildcard.PATH) and the question mark ("?" as of Wildcard.CHAR) we refer to as wildcards.
      Specified by:
      removeAll in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathQuery - The path query including your wildcards.
      Returns:
      The removed properties.
    • removeAll

      default CanonicalTable removeAll(Pattern aRegExp)
      Removes all elements which's keys match the provided regular expression: Queries the keys of the instance using the provided Pattern.
      Specified by:
      removeAll in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aRegExp - The regular expression to be used for the query.
      Returns:
      The removed properties.
    • removeAll

      default CanonicalTable removeAll(String... aPathQueryElements)
      Removes all elements which's keys match the provided path query. Queries the keys of the instance using the PathMatcher' matching patterns, similar to the wildcards '*', '?' and '**' known when querying folders of a filesystem: The PathMatcher applies the following rules from the ANT path pattern to the query provided: A single asterisk ("*" as of Wildcard.FILE) matches zero or more characters within a path name. A double asterisk ("**" as of Wildcard.PATH) matches zero or more characters across directory levels. A question mark ("?" as of Wildcard.CHAR) matches exactly one character within a path name. The single asterisk ("*" as of Wildcard.FILE), the double asterisk ("**" as of Wildcard.PATH) and the question mark ("?" as of Wildcard.CHAR) we refer to as wildcards.
      Specified by:
      removeAll in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathQueryElements - The elements representing your path query including your wildcards.
      Returns:
      The removed properties.
    • removeAll

      default CanonicalTable removeAll(String aPathQuery)
      Removes all elements which's keys match the provided path query. Queries the keys of the instance using the PathMatcher' matching patterns, similar to the wildcards '*', '?' and '**' known when querying folders of a filesystem: The PathMatcher applies the following rules from the ANT path pattern to the query provided: A single asterisk ("*" as of Wildcard.FILE) matches zero or more characters within a path name. A double asterisk ("**" as of Wildcard.PATH) matches zero or more characters across directory levels. A question mark ("?" as of Wildcard.CHAR) matches exactly one character within a path name. The single asterisk ("*" as of Wildcard.FILE), the double asterisk ("**" as of Wildcard.PATH) and the question mark ("?" as of Wildcard.CHAR) we refer to as wildcards.
      Specified by:
      removeAll in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathQuery - The path query including your wildcards.
      Returns:
      The removed properties.
    • removeDirAt

      default CanonicalTable removeDirAt(int aIndex)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Removes the elements of the given index below the root path. Given the following paths and index = 1: /0/0aaa /0/0bbb /0/0bbb /1/1aaa /1/1bbb /1/1bbb You will get a result containing all the elements which's keys begin with "/1/". The keys of the result will exclude the path "prefix" "/1".
      Specified by:
      removeDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aIndex - The index which to use.
      Returns:
      The indexed elements without the indexed path "prefixes".
    • removeDirAt

      default CanonicalTable removeDirAt(Object aPath, int aIndex)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Removes the elements of the given index below the given path. Given the following paths and index = 1 with a queried path "/root/child": /root/child/0/0aaa /root/child/0/0bbb /root/child/0/0bbb /root/child/1/1aaa /root/child/1/1bbb /root/child/1/1bbb You will get a result containing all the elements which's keys begin with "/root/child/1/". The keys of the result will exclude the path "prefix" "/root/child/1".
      Specified by:
      removeDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPath - The path from which to remove the indexed elements.
      aIndex - The index which to use.
      Returns:
      The indexed elements without the indexed path "prefixes".
    • removeDirAt

      default CanonicalTable removeDirAt(Object[] aPathElements, int aIndex)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Removes the elements of the given index below the given path. Given the following paths and index = 1 with a queried path "/root/child": /root/child/0/0aaa /root/child/0/0bbb /root/child/0/0bbb /root/child/1/1aaa /root/child/1/1bbb /root/child/1/1bbb You will get a result containing all the elements which's keys begin with "/root/child/1/".The keys of the result will exclude the path "prefix" "/root/child/1".
      Specified by:
      removeDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The elements of the path from which to remove the indexed elements.
      aIndex - The index which to use.
      Returns:
      The indexed elements without the indexed path "prefixes".
    • removeDirAt

      default CanonicalTable removeDirAt(String aPath, int aIndex)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Removes the elements of the given index below the given path. Given the following paths and index = 1 with a queried path "/root/child": /root/child/0/0aaa /root/child/0/0bbb /root/child/0/0bbb /root/child/1/1aaa /root/child/1/1bbb /root/child/1/1bbb You will get a result containing all the elements which's keys begin with "/root/child/1/".The keys of the result will exclude the path "prefix" "/root/child/1".
      Specified by:
      removeDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPath - The path from which to remove the indexed elements.
      aIndex - The index which to use.
      Returns:
      The indexed elements without the indexed path "prefixes".
    • removeDirAt

      default CanonicalTable removeDirAt(String[] aPathElements, int aIndex)
      An indexed directory represents all elements which begin with a path which's last path element represents an index. There may by many sub-paths for the same indexed path which are all are included by the according directory. Removes the elements of the given index below the given path. Given the following paths and index = 1 with a queried path "/root/child": /root/child/0/0aaa /root/child/0/0bbb /root/child/0/0bbb /root/child/1/1aaa /root/child/1/1bbb /root/child/1/1bbb You will get a result containing all the elements which's keys begin with "/root/child/1/".The keys of the result will exclude the path "prefix" "/root/child/1".
      Specified by:
      removeDirAt in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The elements of the path from which to remove the indexed elements.
      aIndex - The index which to use.
      Returns:
      The indexed elements without the indexed path "prefixes".
    • removeFrom

      default CanonicalTable removeFrom(Collection<?> aPathElements)
      Removes all properties below the provided path and returns the PathTable with the removed elements, by which the paths exclude the parent's path.
      Specified by:
      removeFrom in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The path elements for the path from where to remove all properties.
      Returns:
      The removed properties.
    • removeFrom

      default CanonicalTable removeFrom(Object... aPathElements)
      Removes all properties below the provided path and returns the PathTable with the removed elements, by which the paths exclude the parent's path.
      Specified by:
      removeFrom in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The path elements for the path from where to remove all properties.
      Returns:
      The removed properties.
    • removeFrom

      default CanonicalTable removeFrom(Object aPath)
      Removes all properties below the provided path and returns the PathTable with the removed elements, by which the paths exclude the parent's path.
      Specified by:
      removeFrom in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPath - The path from where to remove all properties.
      Returns:
      The removed properties.
    • removeFrom

      default CanonicalTable removeFrom(String aPath)
      Removes all properties below the provided path and returns the PathTable with the removed elements, by which the paths exclude the parent's path.
      Specified by:
      removeFrom in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPath - The path from where to remove all properties.
      Returns:
      The removed properties.
    • removeFrom

      default CanonicalTable removeFrom(String... aPathElements)
      Removes all properties below the provided path and returns the PathTable with the removed elements, by which the paths exclude the parent's path.
      Specified by:
      removeFrom in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPathElements - The path elements for the path from where to remove all properties.
      Returns:
      The removed properties.
    • removePaths

      default CanonicalTable removePaths(Collection<?> aPaths)
      Removes the paths contained in the provided collection.
      Specified by:
      removePaths in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPaths - The paths to be removed.
      Returns:
      The removed properties.
    • removePaths

      default CanonicalTable removePaths(String... aPaths)
      Removes the paths contained in the provided collection.
      Specified by:
      removePaths in interface ImmutablePathTable.MutablePathTable<String>
      Parameters:
      aPaths - The paths to be removed.
      Returns:
      The removed properties.