Class TomcatSessionManager

java.lang.Object
org.apache.catalina.util.LifecycleBase
org.apache.catalina.util.LifecycleMBeanBase
org.apache.catalina.session.ManagerBase
swiss.trustbroker.oidc.session.TomcatSessionManager
All Implemented Interfaces:
MBeanRegistration, org.apache.catalina.JmxEnabled, org.apache.catalina.Lifecycle, org.apache.catalina.Manager

public class TomcatSessionManager extends org.apache.catalina.session.ManagerBase
Inspired by (but not copied from) hazelcast-tomcat-sessionmanager
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.apache.catalina.session.ManagerBase

    org.apache.catalina.session.ManagerBase.SessionTiming

    Nested classes/interfaces inherited from interface org.apache.catalina.Lifecycle

    org.apache.catalina.Lifecycle.SingleUse
  • Field Summary

    Fields inherited from class org.apache.catalina.session.ManagerBase

    expiredSessions, maxActive, maxActiveSessions, processExpiresFrequency, processingTime, rejectedSessions, secureRandomAlgorithm, secureRandomClass, secureRandomProvider, sessionCreationTiming, sessionExpirationTiming, sessionIdGenerator, sessionIdGeneratorClass, sessionMaxAliveTime, sessions, sm, support, TIMING_STATS_CACHE_SIZE

    Fields 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
    Constructor
    Description
    TomcatSessionManager(StateCacheService stateCacheService, SsoService ssoService, RelyingPartyDefinitions relyingPartyDefinitions, TrustBrokerProperties trustBrokerProperties, TomcatSessionMode mode, CustomOAuth2AuthorizationService customOAuth2AuthorizationService)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    add(org.apache.catalina.Session session)
     
    protected void
    changeSessionId(org.apache.catalina.Session session, String newId, boolean notifySessionListeners, boolean notifyContainerListeners)
     
    org.apache.catalina.Session
     
    org.apache.catalina.Session
    createSession(String sessionId)
     
    void
    expireSession(String sessionId)
     
     
    void
     
    void
     
    void
     
    void
    remove(org.apache.catalina.Session session, boolean update)
     
    void
     
    void
     
    void
     
    void
     

    Methods inherited from class org.apache.catalina.session.ManagerBase

    addPropertyChangeListener, backgroundProcess, changeSessionId, findSessions, generateSessionId, getActiveSessions, getClassName, getContext, getCreationTime, getCreationTimestamp, getDomainInternal, getEngine, getExpiredSessions, getJvmRoute, getLastAccessedTime, getLastAccessedTimestamp, getMaxActive, getMaxActiveSessions, getName, getNewSession, getNotifyAttributeListenerOnUnchangedValue, getNotifyBindingListenerOnUnchangedValue, getObjectNameKeyProperties, getPersistAuthentication, getProcessExpiresFrequency, getProcessingTime, getRejectedSessions, getSecureRandomAlgorithm, getSecureRandomClass, getSecureRandomProvider, getSession, getSessionActivityCheck, getSessionAttribute, getSessionAttributeNameFilter, getSessionAttributeNamePattern, getSessionAttributeValueClassNameFilter, getSessionAttributeValueClassNamePattern, getSessionAverageAliveTime, getSessionCounter, getSessionCreateRate, getSessionExpireRate, getSessionIdGenerator, getSessionLastAccessAtStart, getSessionMaxAliveTime, getThisAccessedTime, getThisAccessedTimestamp, getWarnOnSessionAttributeFilterFailure, initInternal, listSessionIds, remove, removePropertyChangeListener, rotateSessionId, setContext, setExpiredSessions, setMaxActive, setMaxActiveSessions, setNotifyAttributeListenerOnUnchangedValue, setNotifyBindingListenerOnUnchangedValue, setPersistAuthentication, setProcessExpiresFrequency, setProcessingTime, setSecureRandomAlgorithm, setSecureRandomClass, setSecureRandomProvider, setSessionActivityCheck, setSessionAttributeNameFilter, setSessionAttributeValueClassNameFilter, setSessionIdGenerator, setSessionLastAccessAtStart, setSessionMaxAliveTime, setWarnOnSessionAttributeFilterFailure, toString, updateSessionMaxAliveTime, willAttributeDistribute

    Methods inherited from class org.apache.catalina.util.LifecycleMBeanBase

    destroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister, unregister

    Methods inherited from class org.apache.catalina.util.LifecycleBase

    addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stop

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

  • Method Details

    • startInternal

      public void startInternal() throws org.apache.catalina.LifecycleException
      Overrides:
      startInternal in class org.apache.catalina.session.ManagerBase
      Throws:
      org.apache.catalina.LifecycleException
    • stopInternal

      public void stopInternal() throws org.apache.catalina.LifecycleException
      Overrides:
      stopInternal in class org.apache.catalina.session.ManagerBase
      Throws:
      org.apache.catalina.LifecycleException
    • load

      public void load()
    • unload

      public void unload()
    • createEmptySession

      public org.apache.catalina.Session createEmptySession()
      Specified by:
      createEmptySession in interface org.apache.catalina.Manager
      Overrides:
      createEmptySession in class org.apache.catalina.session.ManagerBase
    • createSession

      public org.apache.catalina.Session createSession(String sessionId)
      Specified by:
      createSession in interface org.apache.catalina.Manager
      Overrides:
      createSession in class org.apache.catalina.session.ManagerBase
    • findSession

      public TomcatSession findSession(String id)
      Specified by:
      findSession in interface org.apache.catalina.Manager
      Overrides:
      findSession in class org.apache.catalina.session.ManagerBase
    • changeSessionId

      protected void changeSessionId(org.apache.catalina.Session session, String newId, boolean notifySessionListeners, boolean notifyContainerListeners)
      Overrides:
      changeSessionId in class org.apache.catalina.session.ManagerBase
    • processExpires

      public void processExpires()
      Overrides:
      processExpires in class org.apache.catalina.session.ManagerBase
    • add

      public void add(org.apache.catalina.Session session)
      Specified by:
      add in interface org.apache.catalina.Manager
      Overrides:
      add in class org.apache.catalina.session.ManagerBase
    • remove

      public void remove(org.apache.catalina.Session session, boolean update)
      Specified by:
      remove in interface org.apache.catalina.Manager
      Overrides:
      remove in class org.apache.catalina.session.ManagerBase
    • expireSession

      public void expireSession(String sessionId)
      Overrides:
      expireSession in class org.apache.catalina.session.ManagerBase
    • load

      public void load(OidcTxRequestWrapper request)
    • save

      public void save()