Class ClusterManagerBase

All Implemented Interfaces:
MBeanRegistration, ClusterManager, JmxEnabled, Lifecycle, Manager
Direct Known Subclasses:
BackupManager, DeltaManager

public abstract class ClusterManagerBase extends ManagerBase implements ClusterManager
  • Field Details

  • Constructor Details

    • ClusterManagerBase

      public ClusterManagerBase()
  • Method Details

    • getDeltaRequestPool

      protected SynchronizedStack<DeltaRequest> getDeltaRequestPool()
    • getCluster

      public CatalinaCluster getCluster()
      Specified by:
      getCluster in interface ClusterManager
      Returns:
      the cluster associated with this manager
    • setCluster

      public void setCluster(CatalinaCluster cluster)
      Description copied from interface: ClusterManager
      Set the cluster associated with this manager.
      Specified by:
      setCluster in interface ClusterManager
      Parameters:
      cluster - the cluster
    • isNotifyListenersOnReplication

      public boolean isNotifyListenersOnReplication()
      Specified by:
      isNotifyListenersOnReplication in interface ClusterManager
      Returns:
      true if listeners are notified on replication
    • setNotifyListenersOnReplication

      public void setNotifyListenersOnReplication(boolean notifyListenersOnReplication)
    • isRecordAllActions

      public boolean isRecordAllActions()
    • setRecordAllActions

      public void setRecordAllActions(boolean recordAllActions)
    • getClassLoaders

      public static ClassLoader[] getClassLoaders(Context context)
    • getClassLoaders

      public ClassLoader[] getClassLoaders()
    • getReplicationStream

      public ReplicationStream getReplicationStream(byte[] data) throws IOException
      Description copied from interface: ClusterManager
      Open stream and use correct ClassLoader (Container), switching thread context class loader.
      Specified by:
      getReplicationStream in interface ClusterManager
      Parameters:
      data - the data
      Returns:
      the object input stream
      Throws:
      IOException - An error occurred
    • getReplicationStream

      public ReplicationStream getReplicationStream(byte[] data, int offset, int length) throws IOException
      Description copied from interface: ClusterManager
      Open stream and use correct ClassLoader (Container), switching thread context class loader.
      Specified by:
      getReplicationStream in interface ClusterManager
      Parameters:
      data - the data
      offset - the offset in the data array
      length - the data length
      Returns:
      the object input stream
      Throws:
      IOException - An error occurred
    • load

      public void load()
      Manager implementations that also implement ClusterManager do not support local session persistence.
      Specified by:
      load in interface Manager
    • unload

      public void unload()
      Manager implementations that also implement ClusterManager do not support local session persistence.
      Specified by:
      unload in interface Manager
    • clone

      protected void clone(ClusterManagerBase copy)
    • registerSessionAtReplicationValve

      protected void registerSessionAtReplicationValve(DeltaSession session)
      Register cross context session at replication valve thread local
      Parameters:
      session - cross context session
    • startInternal

      protected void startInternal() throws LifecycleException
      Description copied from class: LifecycleBase
      Sub-classes must ensure that the state is changed to LifecycleState.STARTING during the execution of this method. Changing state will trigger the Lifecycle.START_EVENT event. If a component fails to start it may either throw a LifecycleException which will cause it's parent to fail to start or it can place itself in the error state in which case LifecycleBase.stop() will be called on the failed component but the parent component will continue to start normally.
      Overrides:
      startInternal in class ManagerBase
      Throws:
      LifecycleException - Start error occurred
    • stopInternal

      protected void stopInternal() throws LifecycleException
      Description copied from class: LifecycleBase
      Sub-classes must ensure that the state is changed to LifecycleState.STOPPING during the execution of this method. Changing state will trigger the Lifecycle.STOP_EVENT event.
      Overrides:
      stopInternal in class ManagerBase
      Throws:
      LifecycleException - Stop error occurred