K
- Key typeV
- Value typeN
- Namespace Typepublic abstract class NamespaceBehaviour<K,V,N extends IdentifierNamespace<K,V>> extends Object implements Identifiable<Class<N>>
NamespaceBehaviour.NamespaceStorageNode
which represents local context of one of types defined
n NamespaceBehaviour.StorageNodeType
.
For common behaviour models please use static factories global(Class)
, sourceLocal(Class)
and
treeScoped(Class)
.
Modifier and Type | Class and Description |
---|---|
static interface |
NamespaceBehaviour.NamespaceStorageNode |
static interface |
NamespaceBehaviour.Registry |
static class |
NamespaceBehaviour.StorageNodeType |
Modifier | Constructor and Description |
---|---|
protected |
NamespaceBehaviour(Class<N> identifier) |
Modifier and Type | Method and Description |
---|---|
abstract void |
addTo(NamespaceBehaviour.NamespaceStorageNode storage,
K key,
V value)
Adds a key/value to corresponding namespace storage according to param class.
|
protected void |
addToStorage(NamespaceBehaviour.NamespaceStorageNode storage,
K key,
V value) |
protected com.google.common.base.MoreObjects.ToStringHelper |
addToStringAttributes(com.google.common.base.MoreObjects.ToStringHelper helper) |
protected static NamespaceBehaviour.NamespaceStorageNode |
findClosestTowardsRoot(NamespaceBehaviour.NamespaceStorageNode storage,
NamespaceBehaviour.StorageNodeType type) |
abstract Map<K,V> |
getAllFrom(NamespaceBehaviour.NamespaceStorageNode storage)
Returns all values of a keys of param class from model namespace storage.
|
protected Map<K,V> |
getAllFromLocalStorage(NamespaceBehaviour.NamespaceStorageNode storage) |
abstract V |
getFrom(NamespaceBehaviour.NamespaceStorageNode storage,
K key)
Returns a value from model namespace storage according to key param class.
|
Optional<Map.Entry<K,V>> |
getFrom(NamespaceBehaviour.NamespaceStorageNode storage,
NamespaceKeyCriterion<K> criterion)
Returns the key/value mapping best matching specified criterion.
|
protected V |
getFromLocalStorage(NamespaceBehaviour.NamespaceStorageNode storage,
K key) |
Class<N> |
getIdentifier()
Return this objects Identifier.
|
static <K,V,N extends IdentifierNamespace<K,V>> |
global(Class<N> identifier)
Creates a global namespace behaviour for supplied namespace type.
|
static <K,V,N extends IdentifierNamespace<K,V>> |
rootStatementLocal(Class<N> identifier)
Creates a root-statement-local namespace behaviour for supplied namespace type.
|
static <K,V,N extends IdentifierNamespace<K,V>> |
sourceLocal(Class<N> identifier)
Creates source-local namespace behaviour for supplied namespace type.
|
static <K,V,N extends IdentifierNamespace<K,V>> |
statementLocal(Class<N> identifier) |
String |
toString() |
static <K,V,N extends IdentifierNamespace<K,V>> |
treeScoped(Class<N> identifier)
Creates tree-scoped namespace behaviour for supplied namespace type.
|
public static <K,V,N extends IdentifierNamespace<K,V>> @NonNull NamespaceBehaviour<K,V,N> global(Class<N> identifier)
NamespaceBehaviour.NamespaceStorageNode
with type of NamespaceBehaviour.StorageNodeType.GLOBAL
.K
- type parameterV
- type parameterN
- type parameteridentifier
- Namespace identifier.public static <K,V,N extends IdentifierNamespace<K,V>> @NonNull NamespaceBehaviour<K,V,N> sourceLocal(Class<N> identifier)
NamespaceBehaviour.NamespaceStorageNode
ancestor with type
of NamespaceBehaviour.StorageNodeType.SOURCE_LOCAL_SPECIAL
.K
- type parameterV
- type parameterN
- type parameteridentifier
- Namespace identifier.public static <K,V,N extends IdentifierNamespace<K,V>> @NonNull NamespaceBehaviour<K,V,N> statementLocal(Class<N> identifier)
public static <K,V,N extends IdentifierNamespace<K,V>> @NonNull NamespaceBehaviour<K,V,N> rootStatementLocal(Class<N> identifier)
NamespaceBehaviour.NamespaceStorageNode
ancestor with type
of NamespaceBehaviour.StorageNodeType.ROOT_STATEMENT_LOCAL
.K
- type parameterV
- type parameterN
- type parameteridentifier
- Namespace identifier.public static <K,V,N extends IdentifierNamespace<K,V>> @NonNull NamespaceBehaviour<K,V,N> treeScoped(Class<N> identifier)
K
- type parameterV
- type parameterN
- type parameteridentifier
- Namespace identifier.public abstract V getFrom(NamespaceBehaviour.NamespaceStorageNode storage, K key)
storage
- namespace storagekey
- type parameterpublic final Optional<Map.Entry<K,V>> getFrom(NamespaceBehaviour.NamespaceStorageNode storage, NamespaceKeyCriterion<K> criterion)
storage
- namespace storagecriterion
- selection criterionpublic abstract Map<K,V> getAllFrom(NamespaceBehaviour.NamespaceStorageNode storage)
storage
- namespace storagepublic abstract void addTo(NamespaceBehaviour.NamespaceStorageNode storage, K key, V value)
storage
- namespace storagekey
- type parametervalue
- type parameterpublic Class<N> getIdentifier()
Identifiable
getIdentifier
in interface Identifiable<Class<N extends IdentifierNamespace<K,V>>>
protected final V getFromLocalStorage(NamespaceBehaviour.NamespaceStorageNode storage, K key)
protected final Map<K,V> getAllFromLocalStorage(NamespaceBehaviour.NamespaceStorageNode storage)
protected final void addToStorage(NamespaceBehaviour.NamespaceStorageNode storage, K key, V value)
protected static NamespaceBehaviour.NamespaceStorageNode findClosestTowardsRoot(NamespaceBehaviour.NamespaceStorageNode storage, NamespaceBehaviour.StorageNodeType type)
protected com.google.common.base.MoreObjects.ToStringHelper addToStringAttributes(com.google.common.base.MoreObjects.ToStringHelper helper)
Copyright © 2019 OpenDaylight. All rights reserved.