Class FileSessionDataStore

    • Constructor Detail

      • FileSessionDataStore

        public FileSessionDataStore()
    • Method Detail

      • getStoreDir

        public java.io.File getStoreDir()
      • setStoreDir

        public void setStoreDir​(java.io.File storeDir)
      • isDeleteUnrestorableFiles

        public boolean isDeleteUnrestorableFiles()
      • setDeleteUnrestorableFiles

        public void setDeleteUnrestorableFiles​(boolean deleteUnrestorableFiles)
      • delete

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

        public java.util.Set<java.lang.String> doGetExpired​(java.util.Set<java.lang.String> candidates)
        Check to see which sessions have expired.
        Specified by:
        doGetExpired in class AbstractSessionDataStore
        Parameters:
        candidates - the set of session ids that the SessionCache believes have expired
        Returns:
        the complete set of sessions that have expired, including those that are not currently loaded into the SessionCache
      • load

        public SessionData load​(java.lang.String id)
                         throws java.lang.Exception
        Description copied from interface: SessionDataStore
        Read in session data.
        Parameters:
        id - identity of session to load
        Returns:
        the SessionData matching the id
        Throws:
        java.lang.Exception - if unable to load session data
      • 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
      • exists

        public boolean exists​(java.lang.String id)
        Description copied from interface: SessionDataStore
        Test if data exists for a given session id.
        Parameters:
        id - Identity of session whose existence should be checked
        Returns:
        true if valid, non-expired session exists
      • sweepDisk

        public void sweepDisk()
        Check all session files that do not belong to this context and remove any that expired long ago (ie at least 5 gracePeriods ago).
      • sweepFile

        public void sweepFile​(long now,
                              java.nio.file.Path p)
                       throws java.lang.Exception
        Check to see if the expiry on the file is very old, and delete the file if so. "Old" means that it expired at least 5 gracePeriods ago.
        Parameters:
        now - the time now in msec
        p - the file to check
        Throws:
        java.lang.Exception - indicating error in sweep
      • doInitialize

        protected void doInitialize()
                             throws java.lang.Exception
        Specified by:
        doInitialize in class AbstractComponent
        Throws:
        java.lang.Exception
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object