Class HazelcastSessionDataStore

  • All Implemented Interfaces:
    SessionDataMap, SessionDataStore, org.eclipse.jetty.util.component.Container, org.eclipse.jetty.util.component.Destroyable, org.eclipse.jetty.util.component.Dumpable, org.eclipse.jetty.util.component.Dumpable.DumpableContainer, org.eclipse.jetty.util.component.LifeCycle

    @ManagedObject
    public class HazelcastSessionDataStore
    extends AbstractSessionDataStore
    implements SessionDataStore
    Session data stored in Hazelcast
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

        org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener
      • Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Container

        org.eclipse.jetty.util.component.Container.InheritedListener, org.eclipse.jetty.util.component.Container.Listener
      • Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Dumpable

        org.eclipse.jetty.util.component.Dumpable.DumpableContainer
      • Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle

        org.eclipse.jetty.util.component.LifeCycle.Listener
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean delete​(java.lang.String id)  
      java.util.Set<java.lang.String> doGetExpired​(java.util.Set<java.lang.String> candidates)  
      SessionData doLoad​(java.lang.String id)  
      void doStore​(java.lang.String id, SessionData data, long lastSaveTime)  
      boolean exists​(java.lang.String id)  
      java.lang.String getCacheKey​(java.lang.String id)  
      com.hazelcast.core.IMap<java.lang.String,​SessionData> getSessionDataMap()  
      void initialize​(SessionContext context)  
      boolean isPassivating()  
      boolean isScavengeZombies()  
      void setScavengeZombieSessions​(boolean scavengeZombies)
      Control whether or not to execute queries to find "zombie" sessions - ie sessions that are no longer actively referenced by any jetty instance and should be expired.
      void setSessionDataMap​(com.hazelcast.core.IMap<java.lang.String,​SessionData> sessionDataMap)  
      • Methods inherited from class org.eclipse.jetty.util.component.ContainerLifeCycle

        addBean, addBean, addEventListener, addManaged, contains, destroy, doStop, dump, dump, dump, dump, dump, dumpBeans, dumpObject, dumpObjects, dumpStdErr, dumpThis, getBean, getBeans, getBeans, getContainedBeans, getContainedBeans, isAuto, isManaged, isUnmanaged, manage, removeBean, removeBeans, removeEventListener, setBeans, setStopTimeout, start, stop, unmanage, updateBean, updateBean, updateBeans
      • Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

        addLifeCycleListener, getState, getState, getStopTimeout, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface org.eclipse.jetty.util.component.Dumpable

        dumpSelf
      • Methods inherited from interface org.eclipse.jetty.util.component.Dumpable.DumpableContainer

        isDumpable
      • Methods inherited from interface org.eclipse.jetty.util.component.LifeCycle

        addLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop
    • Constructor Detail

      • HazelcastSessionDataStore

        public HazelcastSessionDataStore()
    • Method Detail

      • setScavengeZombieSessions

        public void setScavengeZombieSessions​(boolean scavengeZombies)
        Control whether or not to execute queries to find "zombie" sessions - ie sessions that are no longer actively referenced by any jetty instance and should be expired. If you use this feature, be aware that if your session stores any attributes that use classes from within your webapp, or from within jetty, you will need to make sure those classes are available to all of your hazelcast instances, whether embedded or remote.
        Parameters:
        scavengeZombies - true means unreferenced sessions will be actively sought and expired. False means that they will remain in hazelcast until some other mechanism removes them.
      • isScavengeZombies

        public boolean isScavengeZombies()
      • delete

        public boolean delete​(java.lang.String id)
                       throws java.lang.Exception
        Specified by:
        delete in interface SessionDataMap
        Throws:
        java.lang.Exception
      • getSessionDataMap

        public com.hazelcast.core.IMap<java.lang.String,​SessionData> getSessionDataMap()
      • setSessionDataMap

        public void setSessionDataMap​(com.hazelcast.core.IMap<java.lang.String,​SessionData> sessionDataMap)
      • exists

        public boolean exists​(java.lang.String id)
                       throws java.lang.Exception
        Specified by:
        exists in interface SessionDataStore
        Throws:
        java.lang.Exception
      • getCacheKey

        public java.lang.String getCacheKey​(java.lang.String id)