Interface IClusterConfig
-
- All Superinterfaces:
org.apache.wicket.util.io.IClusterable
,IObservable
,IPluginConfig
,org.apache.wicket.util.value.IValueMap
,Map<String,Object>
,Serializable
- All Known Implementing Classes:
AbstractClusterDecorator
,ClusterConfigDecorator
,JavaClusterConfig
,JcrClusterConfig
public interface IClusterConfig extends IPluginConfig
Descriptor of a cluster of plugins. These can interact with other plugins by declaring what services are consumed, what services are offered and what properties can be set.Entries at the top level are available as variables to plugins when the cluster is instantiated. Suppose the cluster config has the key "mykey", value "myvalue". A plugin config contains the key "pluginKey" with value "${mykey}.extra". When the instantiated
IPlugin
invokesIValueMap.getString(String)
, the value "myvalue.extra" will be returned.In addition to these variables, the "cluster.id" variable has a value that is unique to the instantiated cluster. It can be used to create cluster-specific service names.
When the configuration has been obtained from an instantiated cluster with
IClusterControl.getClusterConfig()
, all variable expansion has been applied. The configuration is read-only in that case.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description List<IPluginConfig>
getPlugins()
The plugin configurations in the cluster.List<String>
getProperties()
Properties that specify additional plugin behavior.List<PropertyDescriptor>
getPropertyDescriptors()
Descriptors of additional plugin properties.List<String>
getReferences()
The keys for services that are used by plugins in the cluster.List<String>
getServices()
The list of keys for services.void
setPlugins(List<IPluginConfig> plugins)
Update the plugins in the cluster.-
Methods inherited from interface org.hippoecm.frontend.model.event.IObservable
equals, hashCode, setObservationContext, startObservation, stopObservation
-
Methods inherited from interface org.hippoecm.frontend.plugin.config.IPluginConfig
getName, getPluginConfig, getPluginConfigSet
-
Methods inherited from interface org.apache.wicket.util.value.IValueMap
getAsBoolean, getAsBoolean, getAsDouble, getAsDouble, getAsDuration, getAsDuration, getAsEnum, getAsEnum, getAsEnum, getAsInstant, getAsInteger, getAsInteger, getAsLong, getAsLong, getAsTime, getBoolean, getCharSequence, getDouble, getDouble, getDuration, getInstant, getInt, getInt, getKey, getLong, getLong, getString, getString, getStringArray, getStringValue, isImmutable, makeImmutable
-
Methods inherited from interface java.util.Map
clear, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, equals, forEach, get, getOrDefault, hashCode, isEmpty, keySet, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, size, values
-
-
-
-
Method Detail
-
getPlugins
List<IPluginConfig> getPlugins()
The plugin configurations in the cluster. Returns an immutable list of plugins.
-
setPlugins
void setPlugins(List<IPluginConfig> plugins)
Update the plugins in the cluster. Only available when the the configuration is used as a template for the cluster configuration.
-
getServices
List<String> getServices()
The list of keys for services. Since service types are not available, it is recommended to always use well-known keys when they exist. I.e. use "wicket.id" to identify anIRenderService
.The returned list is only mutable when the configuration is used as a template.
-
getReferences
List<String> getReferences()
The keys for services that are used by plugins in the cluster.The returned list is only mutable when the configuration is used as a template.
-
getProperties
List<String> getProperties()
Properties that specify additional plugin behavior.The returned list is only mutable when the configuration is used as a template.
-
getPropertyDescriptors
List<PropertyDescriptor> getPropertyDescriptors()
Descriptors of additional plugin properties.Changes to the returned list have no effect on actual configuration.
-
-