public interface NetworkConfigStore extends Store<NetworkConfigEvent,NetworkConfigStoreDelegate>
Modifier and Type | Method and Description |
---|---|
void |
addConfigFactory(ConfigFactory configFactory)
Adds a new configuration factory.
|
<S,C extends Config<S>> |
applyConfig(S subject,
java.lang.Class<C> configClass,
com.fasterxml.jackson.databind.JsonNode json)
Applies configuration for the specified subject and configuration
class using the raw JSON object.
|
<S> void |
clearConfig()
Clears the complete configuration including queued.
|
<S> void |
clearConfig(S subject)
Clears the configuration based on the subject including queued.
|
<S,C extends Config<S>> |
clearConfig(S subject,
java.lang.Class<C> configClass)
Clears the configuration of the given class for the specified subject.
|
<S> void |
clearQueuedConfig(S subject,
java.lang.String configKey)
Clears the configuration of the given class for the specified subject.
|
<S,C extends Config<S>> |
createConfig(S subject,
java.lang.Class<C> configClass)
Creates a new configuration of the given class for the specified subject.
|
<S,C extends Config<S>> |
getConfig(S subject,
java.lang.Class<C> configClass)
Get the configuration of the given class and for the specified subject.
|
<S> java.util.Set<java.lang.Class<? extends Config<S>>> |
getConfigClasses(S subject)
Returns set of configuration classes available for the specified subject.
|
<S,C extends Config<S>> |
getConfigFactory(java.lang.Class<C> configClass)
Returns the configuration factory for the specified configuration class.
|
<S> java.util.Set<S> |
getSubjects(java.lang.Class<S> subjectClass)
Returns set of subjects of the specified class, which have some
network configuration associated with them.
|
<S,C extends Config<S>> |
getSubjects(java.lang.Class<S> subjectClass,
java.lang.Class<C> configClass)
Returns set of subjects of the specified class, which have the
specified class of network configuration associated with them.
|
<S> void |
queueConfig(S subject,
java.lang.String configKey,
com.fasterxml.jackson.databind.JsonNode json)
Queues pending configuration for the specified subject and configuration
class using the raw JSON object.
|
void |
removeConfigFactory(ConfigFactory configFactory)
Removes a configuration factory.
|
hasDelegate, setDelegate, unsetDelegate
void addConfigFactory(ConfigFactory configFactory)
configFactory
- configuration factory to addvoid removeConfigFactory(ConfigFactory configFactory)
configFactory
- configuration factory to remove<S,C extends Config<S>> ConfigFactory<S,C> getConfigFactory(java.lang.Class<C> configClass)
S
- type of subjectC
- type of configurationconfigClass
- configuration class<S> java.util.Set<S> getSubjects(java.lang.Class<S> subjectClass)
S
- type of subjectsubjectClass
- subject class<S,C extends Config<S>> java.util.Set<S> getSubjects(java.lang.Class<S> subjectClass, java.lang.Class<C> configClass)
S
- type of subjectC
- type of configurationsubjectClass
- subject classconfigClass
- configuration class<S> java.util.Set<java.lang.Class<? extends Config<S>>> getConfigClasses(S subject)
S
- type of subjectsubject
- configuration subject<S,C extends Config<S>> C getConfig(S subject, java.lang.Class<C> configClass)
S
- type of subjectC
- type of configurationsubject
- configuration subjectconfigClass
- configuration class<S,C extends Config<S>> C createConfig(S subject, java.lang.Class<C> configClass)
S
- type of subjectC
- type of configurationsubject
- configuration subjectconfigClass
- configuration class<S,C extends Config<S>> C applyConfig(S subject, java.lang.Class<C> configClass, com.fasterxml.jackson.databind.JsonNode json)
S
- type of subjectC
- type of configurationsubject
- configuration subjectconfigClass
- configuration classjson
- raw JSON node containing the configuration datajava.lang.IllegalArgumentException
- if the supplied JSON node contains
invalid data<S,C extends Config<S>> void clearConfig(S subject, java.lang.Class<C> configClass)
S
- type of subjectC
- type of configurationsubject
- configuration subjectconfigClass
- configuration class<S> void queueConfig(S subject, java.lang.String configKey, com.fasterxml.jackson.databind.JsonNode json)
S
- type of subjectsubject
- configuration subjectconfigKey
- configuration keyjson
- raw JSON node containing the configuration datajava.lang.IllegalArgumentException
- if the supplied JSON node contains
invalid data<S> void clearQueuedConfig(S subject, java.lang.String configKey)
S
- type of subjectsubject
- configuration subjectconfigKey
- configuration key<S> void clearConfig(S subject)
S
- type of subjectsubject
- configuration subject<S> void clearConfig()
S
- type of subject