Package org.apache.catalina.ha.session
Class ClusterManagerBase
java.lang.Object
org.apache.catalina.util.LifecycleBase
org.apache.catalina.util.LifecycleMBeanBase
org.apache.catalina.session.ManagerBase
org.apache.catalina.ha.session.ClusterManagerBase
- All Implemented Interfaces:
MBeanRegistration,ClusterManager,JmxEnabled,Lifecycle,Manager
- Direct Known Subclasses:
BackupManager,DeltaManager
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.catalina.session.ManagerBase
ManagerBase.SessionTimingNested classes/interfaces inherited from interface org.apache.catalina.Lifecycle
Lifecycle.SingleUse -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected CatalinaClusterA reference to the clusterprotected static final StringManagerFields inherited from class org.apache.catalina.session.ManagerBase
duplicates, expiredSessions, maxActive, maxActiveSessions, processExpiresFrequency, processingTime, rejectedSessions, secureRandomAlgorithm, secureRandomClass, secureRandomProvider, sessionCounter, sessionCreationTiming, sessionExpirationTiming, sessionIdGenerator, sessionIdGeneratorClass, sessionMaxAliveTime, sessions, support, TIMING_STATS_CACHE_SIZEFields inherited from class org.apache.catalina.util.LifecycleMBeanBase
mserverFields inherited from interface org.apache.catalina.Lifecycle
AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidclone(ClusterManagerBase copy) static ClassLoader[]getClassLoaders(Context context) protected SynchronizedStack<DeltaRequest>getReplicationStream(byte[] data) Open stream and use correct ClassLoader (Container), switching thread context class loader.getReplicationStream(byte[] data, int offset, int length) booleanbooleanvoidload()Managerimplementations that also implementClusterManagerdo not support local session persistence.protected voidRegister cross context session at replication valve thread localvoidsetCluster(CatalinaCluster cluster) voidsetNotifyListenersOnReplication(boolean notifyListenersOnReplication) voidsetRecordAllActions(boolean recordAllActions) protected voidSub-classes must ensure that the state is changed toLifecycleState.STARTINGduring the execution of this method.protected voidSub-classes must ensure that the state is changed toLifecycleState.STOPPINGduring the execution of this method.voidunload()Managerimplementations that also implementClusterManagerdo not support local session persistence.Methods inherited from class org.apache.catalina.session.ManagerBase
add, addPropertyChangeListener, backgroundProcess, changeSessionId, changeSessionId, changeSessionId, createEmptySession, createSession, expireSession, findSession, findSessions, generateSessionId, getActiveSessions, getClassName, getContext, getCreationTime, getCreationTimestamp, getDomainInternal, getDuplicates, getEngine, getExpiredSessions, getJvmRoute, getLastAccessedTime, getLastAccessedTimestamp, getMaxActive, getMaxActiveSessions, getName, getNewSession, getNotifyAttributeListenerOnUnchangedValue, getNotifyBindingListenerOnUnchangedValue, getObjectNameKeyProperties, getPersistAuthentication, getPersistAuthenticationNotes, getProcessExpiresFrequency, getProcessingTime, getRejectedSessions, getSecureRandomAlgorithm, getSecureRandomClass, getSecureRandomProvider, getSession, getSessionAttribute, getSessionAttributeNameFilter, getSessionAttributeNamePattern, getSessionAttributeValueClassNameFilter, getSessionAttributeValueClassNamePattern, getSessionAverageAliveTime, getSessionCounter, getSessionCreateRate, getSessionExpireRate, getSessionIdGenerator, getSessionMaxAliveTime, getThisAccessedTime, getThisAccessedTimestamp, getWarnOnSessionAttributeFilterFailure, initInternal, listSessionIds, processExpires, remove, remove, removePropertyChangeListener, rotateSessionId, setContext, setDuplicates, setExpiredSessions, setMaxActive, setMaxActiveSessions, setNotifyAttributeListenerOnUnchangedValue, setNotifyBindingListenerOnUnchangedValue, setPersistAuthentication, setPersistAuthenticationNotes, setProcessExpiresFrequency, setProcessingTime, setSecureRandomAlgorithm, setSecureRandomClass, setSecureRandomProvider, setSessionAttributeNameFilter, setSessionAttributeValueClassNameFilter, setSessionCounter, setSessionIdGenerator, setSessionMaxAliveTime, setWarnOnSessionAttributeFilterFailure, toString, updateSessionMaxAliveTime, willAttributeDistributeMethods inherited from class org.apache.catalina.util.LifecycleMBeanBase
destroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister, unregisterMethods inherited from class org.apache.catalina.util.LifecycleBase
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stopMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.catalina.ha.ClusterManager
cloneFromTemplate, getInvalidatedSessions, getName, messageDataReceived, requestCompleted, setNameMethods inherited from interface org.apache.catalina.Manager
add, addPropertyChangeListener, backgroundProcess, changeSessionId, changeSessionId, createEmptySession, createSession, findSession, findSessions, getActiveSessions, getContext, getExpiredSessions, getMaxActive, getNotifyAttributeListenerOnUnchangedValue, getNotifyBindingListenerOnUnchangedValue, getRejectedSessions, getSessionAverageAliveTime, getSessionCounter, getSessionCreateRate, getSessionExpireRate, getSessionIdGenerator, getSessionMaxAliveTime, remove, remove, removePropertyChangeListener, rotateSessionId, setContext, setExpiredSessions, setMaxActive, setNotifyAttributeListenerOnUnchangedValue, setNotifyBindingListenerOnUnchangedValue, setSessionCounter, setSessionIdGenerator, setSessionMaxAliveTime, willAttributeDistribute
-
Field Details
-
sm
-
cluster
A reference to the cluster
-
-
Constructor Details
-
ClusterManagerBase
public ClusterManagerBase()
-
-
Method Details
-
getDeltaRequestPool
-
getCluster
- Specified by:
getClusterin interfaceClusterManager
-
setCluster
- Specified by:
setClusterin interfaceClusterManager
-
isNotifyListenersOnReplication
public boolean isNotifyListenersOnReplication()- Specified by:
isNotifyListenersOnReplicationin interfaceClusterManager
-
setNotifyListenersOnReplication
public void setNotifyListenersOnReplication(boolean notifyListenersOnReplication) -
isRecordAllActions
public boolean isRecordAllActions() -
setRecordAllActions
public void setRecordAllActions(boolean recordAllActions) -
getClassLoaders
-
getClassLoaders
-
getReplicationStream
Description copied from interface:ClusterManagerOpen stream and use correct ClassLoader (Container), switching thread context class loader.- Specified by:
getReplicationStreamin interfaceClusterManager- 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 - Specified by:
getReplicationStreamin interfaceClusterManager- Throws:
IOException
-
load
public void load()Managerimplementations that also implementClusterManagerdo not support local session persistence. -
unload
public void unload()Managerimplementations that also implementClusterManagerdo not support local session persistence. -
clone
-
registerSessionAtReplicationValve
Register cross context session at replication valve thread local- Parameters:
session- cross context session
-
startInternal
Description copied from class:LifecycleBaseSub-classes must ensure that the state is changed toLifecycleState.STARTINGduring the execution of this method. Changing state will trigger theLifecycle.START_EVENTevent. If a component fails to start it may either throw aLifecycleExceptionwhich will cause it's parent to fail to start or it can place itself in the error state in which caseLifecycleBase.stop()will be called on the failed component but the parent component will continue to start normally.- Overrides:
startInternalin classManagerBase- Throws:
LifecycleException- Start error occurred
-
stopInternal
Description copied from class:LifecycleBaseSub-classes must ensure that the state is changed toLifecycleState.STOPPINGduring the execution of this method. Changing state will trigger theLifecycle.STOP_EVENTevent.- Overrides:
stopInternalin classManagerBase- Throws:
LifecycleException- Stop error occurred
-