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 invokes IValueMap.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 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 an IRenderService.

        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.