Class AbstractSessionManager<C,MV,AV,SC>
java.lang.Object
org.wildfly.clustering.session.cache.AbstractSessionManager<C,MV,AV,SC>
- Type Parameters:
C- the session manager context typeMV- the session metadata value typeAV- the session attribute value typeSC- the session context type
- All Implemented Interfaces:
Manager<String>,ManagerConfiguration<String>,Service,SessionManager<SC>,SessionStatistics
- Direct Known Subclasses:
HotRodSessionManager,InfinispanSessionManager
public abstract class AbstractSessionManager<C,MV,AV,SC>
extends Object
implements SessionManager<SC>, SessionStatistics
An abstract
SessionManager implementation that delegates most implementation details to a SessionFactory.- Author:
- Paul Ferraro
-
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractSessionManager(Supplier<SessionManager<SC>> manager, SessionManagerConfiguration<C> configuration, CacheConfiguration cacheConfiguration, SessionFactory<C, MV, AV, SC> factory, Consumer<ImmutableSession> sessionCloseTask) -
Method Summary
Modifier and TypeMethodDescriptionCreates a session using the specified identifier.Returns a read-only view of the session with the specified identifier.Returns the session with the specified identifier, or null if none exists.Returns a batcher for use by users of this manager.Returns a detached session with the specified identifier.Returns a factory for creating identifiers for use by this manager.Returns statistics for this session manager.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.wildfly.clustering.server.manager.Service
isStarted, start, stopMethods inherited from interface org.wildfly.clustering.session.SessionManager
createSession, findImmutableSession, findSessionMethods inherited from interface org.wildfly.clustering.session.SessionStatistics
getActiveSessionCount, getActiveSessions, getSessions
-
Field Details
-
logger
protected final org.jboss.logging.Logger logger
-
-
Constructor Details
-
AbstractSessionManager
protected AbstractSessionManager(Supplier<SessionManager<SC>> manager, SessionManagerConfiguration<C> configuration, CacheConfiguration cacheConfiguration, SessionFactory<C, MV, AV, SC> factory, Consumer<ImmutableSession> sessionCloseTask)
-
-
Method Details
-
getIdentifierFactory
Description copied from interface:ManagerConfigurationReturns a factory for creating identifiers for use by this manager.- Specified by:
getIdentifierFactoryin interfaceManagerConfiguration<C>- Returns:
- an identifier factory
-
getBatchFactory
-
createSessionAsync
Description copied from interface:SessionManagerCreates a session using the specified identifier. Sessions returned by this method must be closed viaSession.close(). This method is intended to be invoked within the context of a batch.- Specified by:
createSessionAsyncin interfaceSessionManager<C>- Parameters:
id- a session identifier- Returns:
- a new web session, or null if a session with the specified identifier already exists.
-
findSessionAsync
Description copied from interface:SessionManagerReturns the session with the specified identifier, or null if none exists. Sessions returned by this method must be closed viaSession.close(). This method is intended to be invoked within the context of a batch.- Specified by:
findSessionAsyncin interfaceSessionManager<C>- Parameters:
id- a session identifier- Returns:
- an existing web session, or null if none exists
-
findImmutableSessionAsync
Description copied from interface:SessionManagerReturns a read-only view of the session with the specified identifier. This method is intended to be invoked within the context of a batch- Specified by:
findImmutableSessionAsyncin interfaceSessionManager<C>- Parameters:
id- a unique session identifier- Returns:
- a read-only session or null if none exists
-
getDetachedSession
Description copied from interface:SessionManagerReturns a detached session with the specified identifier. A detached session is only valid if a session exists for the given identifier.- Specified by:
getDetachedSessionin interfaceSessionManager<C>- Parameters:
id- the session identifier of the detached session- Returns:
- a detached session
-
getStatistics
Description copied from interface:SessionManagerReturns statistics for this session manager.- Specified by:
getStatisticsin interfaceSessionManager<C>- Returns:
- an object from which statistics can be obtained.
-