Class DefaultStateManager

    • Constructor Detail

      • DefaultStateManager

        public DefaultStateManager()
    • Method Detail

      • updateContext

        public void updateContext​(AbstractContext context,
                                  String[] propertyNames)
                           throws ClusteringFault
        Description copied from interface: StateManager
        This method is called when one need to update/replicate only certains properties in the specified context
        Specified by:
        updateContext in interface StateManager
        Parameters:
        context - The AbstractContext containing the properties to be replicated
        propertyNames - The names of the specific properties that should be replicated
        Throws:
        ClusteringFault - If replication fails
      • updateContexts

        public void updateContexts​(AbstractContext[] contexts)
                            throws ClusteringFault
        Description copied from interface: StateManager
        This method is called when properties in a collection of AbstractContexts are updated. This could be addition of new properties, modifications of existing properties or removal of properties.
        Specified by:
        updateContexts in interface StateManager
        Parameters:
        contexts - The AbstractContexts containing the properties to be replicated
        Throws:
        ClusteringFault - If replication fails
      • isContextClusterable

        public boolean isContextClusterable​(AbstractContext context)
        Description copied from interface: StateManager
        This is a check to see whether the properties in an instance of AbstractContext should be replicated. This allows an implementer to dissallow the replication of properties stored in a certain type of context
        Specified by:
        isContextClusterable in interface StateManager
        Parameters:
        context - The instance of AbstractContext under consideration
        Returns:
        True - if the provided AbstractContext is clusterable
      • setConfigurationContext

        public void setConfigurationContext​(ConfigurationContext configurationContext)
        Description copied from interface: StateManager
        Set the system's configuration context. This will be used by the clustering implementations to get information about the Axis2 environment and to correspond with the Axis2 environment
        Specified by:
        setConfigurationContext in interface StateManager
        Parameters:
        configurationContext - The configuration context
      • setReplicationExcludePatterns

        public void setReplicationExcludePatterns​(String contextType,
                                                  List patterns)
        Description copied from interface: StateManager

        All properties in the context with type contextType which have names that match the specified pattern will be excluded from replication.

        Only prefixes and suffixes are allowed. e.g. the local_* pattern indicates that all property names starting with local_ should be omitted from replication. *_local pattern indicated that all property names ending with _local should be omitted from replication. * pattern indicates that all properties should be excluded.

        Generally, we can use the context class name as the context type.

        Specified by:
        setReplicationExcludePatterns in interface StateManager
        Parameters:
        contextType - The type of the context such as org.apache.axis2.context.ConfigurationContext, org.apache.axis2.context.ServiceGroupContext & org.apache.axis2.context.ServiceContext. Also "defaults" is a special type, which will apply to all contexts
        patterns - The patterns