Modifier | Constructor and Description |
---|---|
protected |
ConfigFactory(SubjectFactory<S> subjectFactory,
Class<C> configClass,
String configKey)
Creates a new configuration factory for the specified class of subjects
capable of generating the configurations of the specified class.
|
protected |
ConfigFactory(SubjectFactory<S> subjectFactory,
Class<C> configClass,
String configKey,
boolean isList)
Creates a new configuration factory for the specified class of subjects
capable of generating the configurations of the specified class.
|
Modifier and Type | Method and Description |
---|---|
Class<C> |
configClass()
Returns the class of the configuration which this factory generates.
|
String |
configKey()
Returns the unique key (within subject class) of this configuration.
|
abstract C |
createConfig()
Creates a new but uninitialized configuration.
|
boolean |
isList()
Indicates whether the configuration is a list and should be backed by
a JSON array rather than JSON object.
|
SubjectFactory<S> |
subjectFactory()
Returns the class of the subject to which this factory applies.
|
protected ConfigFactory(SubjectFactory<S> subjectFactory, Class<C> configClass, String configKey)
subjectFactory
- subject factoryconfigClass
- configuration classconfigKey
- configuration class keyprotected ConfigFactory(SubjectFactory<S> subjectFactory, Class<C> configClass, String configKey, boolean isList)
Note that configurations backed by JSON array are not easily extensible at the top-level as they are inherently limited to holding an ordered list of items.
subjectFactory
- subject factoryconfigClass
- configuration classconfigKey
- configuration class keyisList
- true to indicate backing by JSON arraypublic SubjectFactory<S> subjectFactory()
public Class<C> configClass()
public String configKey()
public abstract C createConfig()
Config.init(S, java.lang.String, com.fasterxml.jackson.databind.JsonNode, com.fasterxml.jackson.databind.ObjectMapper, org.onosproject.net.config.ConfigApplyDelegate)
method.public boolean isList()