Class HazelcastSessionDataStore

    • 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()
      • doLoad

        public SessionData doLoad​(java.lang.String id)
                           throws java.lang.Exception
        Description copied from class: AbstractSessionDataStore
        Load the session from persistent store.
        Specified by:
        doLoad in class AbstractSessionDataStore
        Parameters:
        id - the id of the session to load
        Returns:
        the re-inflated session
        Throws:
        java.lang.Exception - if unable to load the session
      • delete

        public boolean delete​(java.lang.String id)
                       throws java.lang.Exception
        Description copied from interface: SessionDataMap
        Delete session data
        Specified by:
        delete in interface SessionDataMap
        Parameters:
        id - identity of session to delete
        Returns:
        true if the session was deleted
        Throws:
        java.lang.Exception - if unable to delete session data
      • getSessionDataMap

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

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

        public void initialize​(SessionContext context)
                        throws java.lang.Exception
        Description copied from interface: SessionDataMap
        Initialize this data map for the given context. A SessionDataMap can only be used by one context(/session manager).
        Specified by:
        initialize in interface SessionDataMap
        Overrides:
        initialize in class AbstractSessionDataStore
        Parameters:
        context - context associated
        Throws:
        java.lang.Exception - if unable to initialize the
      • doStore

        public void doStore​(java.lang.String id,
                            SessionData data,
                            long lastSaveTime)
                     throws java.lang.Exception
        Description copied from class: AbstractSessionDataStore
        Store the session data persistently.
        Specified by:
        doStore in class AbstractSessionDataStore
        Parameters:
        id - identity of session to store
        data - info of the session
        lastSaveTime - time of previous save or 0 if never saved
        Throws:
        java.lang.Exception - if unable to store data
      • isPassivating

        public boolean isPassivating()
        Description copied from interface: SessionDataStore
        True if this type of datastore will passivate session objects
        Specified by:
        isPassivating in interface SessionDataStore
        Returns:
        true if this store can passivate sessions, false otherwise
      • doGetExpired

        public java.util.Set<java.lang.String> doGetExpired​(java.util.Set<java.lang.String> candidates)
        Description copied from class: AbstractSessionDataStore
        Implemented by subclasses to resolve which sessions this node should attempt to expire.
        Specified by:
        doGetExpired in class AbstractSessionDataStore
        Parameters:
        candidates - the ids of sessions the SessionDataStore thinks has expired
        Returns:
        the reconciled set of session ids that this node should attempt to expire
      • exists

        public boolean exists​(java.lang.String id)
                       throws java.lang.Exception
        Description copied from interface: SessionDataStore
        Test if data exists for a given session id.
        Specified by:
        exists in interface SessionDataStore
        Parameters:
        id - Identity of session whose existence should be checked
        Returns:
        true if valid, non-expired session exists
        Throws:
        java.lang.Exception - if problem checking existence with persistence layer
      • getCacheKey

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