Interface ObservableProperties

All Superinterfaces:
org.refcodes.mixin.AnnotatorAccessor, org.refcodes.struct.CanonicalMap, org.refcodes.struct.Containable, org.refcodes.mixin.DelimiterAccessor, org.refcodes.struct.Dictionary<String,String>, org.refcodes.mixin.Dumpable, org.refcodes.mixin.EmptyAccessor, org.refcodes.struct.InterOperableMap<String>, org.refcodes.struct.Keys<String,String>, org.refcodes.observer.Observable<PropertiesObserver>, org.refcodes.struct.PathMap<String>, org.refcodes.properties.Properties, org.refcodes.mixin.TypeAccessor<String>
All Known Subinterfaces:
ObservableProperties.ObservableMutableProperties, ObservableProperties.ObservablePropertiesBuilder, ObservableResouceProperties, ObservableResouceProperties.ObservableMutableResourceProperties, ObservableResouceProperties.ObservableResourcePropertiesBuilder
All Known Implementing Classes:
AbstractObservablePropertiesBuilderDecorator, AbstractObservableResourcePropertiesBuilderDecorator, ObservableJavaPropertiesBuilderImpl, ObservableJsonPropertiesBuilderImpl, ObservablePropertiesBuilderDecorator, ObservableResourcePropertiesBuilderDecorator, ObservableTomlPropertiesBuilderImpl, ObservableXmlPropertiesBuilderImpl, ObservableYamlPropertiesBuilderImpl

public interface ObservableProperties extends org.refcodes.properties.Properties, org.refcodes.observer.Observable<PropertiesObserver>
The ObservableProperties represent Properties which are observable in terms of create, update and delete operations: Create: Whenever a property is created (as of Keys.MutableValues.put(Object, Object)) in the related ObservableProperties instance, then the PropertiesObserver.onPropertyCreatedEvent(PropertyCreatedEvent) method of a registered PropertiesObserver instance is invoked. Update: Whenever an existing property (as of Keys.containsKey(Object)) is updated in the related ObservableProperties instance (as of Keys.MutableValues.put(Object, Object) or the like}, then the PropertiesObserver.onPropertyUpdatedEvent(PropertyUpdatedEvent) method of a registered PropertiesObserver instance is invoked. Delete: Whenever a property is deleted (as of Map.remove(Object)), then the PropertiesObserver.onPropertyDeletedEvent(PropertyDeletedEvent) method of a registered PropertiesObserver instance is invoked. A catch-all (lambda) for all events is provided by the PropertiesObserver via the PropertiesObserver.onEvent(PropertyEvent) method. You can provide a lambda expression when calling Observable.subscribeObserver(Object), thereby implementing this catch-all method.
  • Nested Class Summary

    Nested Classes

    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

    org.refcodes.properties.Properties.MutableProperties, org.refcodes.properties.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 inherited from interface org.refcodes.struct.PathMap

    ANNOTATOR, DELIMITER

    Fields inherited from interface org.refcodes.properties.Properties

    DEFAULT_COMMENT
  • Method Summary

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

    size

    Methods inherited from interface org.refcodes.mixin.Dumpable

    toDump, toDump

    Methods inherited from interface org.refcodes.mixin.EmptyAccessor

    isEmpty

    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

    containsKey, get, getOr, keySet, use, values

    Methods inherited from interface org.refcodes.observer.Observable

    hasObserverSubscription, subscribeObserver, unsubscribeObserver

    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, 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

    Methods inherited from interface org.refcodes.properties.Properties

    containsValue, getAnnotator, getDelimiter, 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, retrieveFrom, retrieveTo, retrieveTo, retrieveTo, retrieveTo, retrieveTo