Package org.eclipse.jetty.server.session
Class FileSessionDataStore
- java.lang.Object
-
- org.eclipse.jetty.util.component.AbstractLifeCycle
-
- org.eclipse.jetty.util.component.ContainerLifeCycle
-
- org.eclipse.jetty.server.session.AbstractSessionDataStore
-
- org.eclipse.jetty.server.session.FileSessionDataStore
-
- All Implemented Interfaces:
SessionDataMap
,SessionDataStore
,Container
,Destroyable
,Dumpable
,Dumpable.DumpableContainer
,LifeCycle
@ManagedObject @Deprecated(since="2021-05-27") public class FileSessionDataStore extends AbstractSessionDataStore
Deprecated.The Eclipse Jetty and Apache Felix Http Jetty packages are no longer supported.FileSessionDataStore A file-based store of session data.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle
AbstractLifeCycle.AbstractLifeCycleListener
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Container
Container.InheritedListener, Container.Listener
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Dumpable
Dumpable.DumpableContainer
-
Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle
LifeCycle.Listener
-
-
Constructor Summary
Constructors Constructor Description FileSessionDataStore()
Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description boolean
delete(java.lang.String id)
Deprecated.Delete a sessionboolean
deleteFile(java.lang.String filename)
Deprecated.Delete the file associated with a sessionjava.util.Set<java.lang.String>
doGetExpired(java.util.Set<java.lang.String> candidates)
Deprecated.Check to see which sessions have expired.SessionData
doLoad(java.lang.String id)
Deprecated.Load the session from persistent store.void
doStore(java.lang.String id, SessionData data, long lastSaveTime)
Deprecated.Store the session data persistently.boolean
exists(java.lang.String id)
Deprecated.Test if data exists for a given session id.java.io.File
getStoreDir()
Deprecated.void
initialize(SessionContext context)
Deprecated.Initialize this data map for the given context.void
initializeStore()
Deprecated.Read the names of the existing session files and build a map of fully qualified session ids (ie with context) to filename.boolean
isDeleteUnrestorableFiles()
Deprecated.boolean
isPassivating()
Deprecated.True if this type of datastore will passivate session objectsvoid
setDeleteUnrestorableFiles(boolean deleteUnrestorableFiles)
Deprecated.void
setStoreDir(java.io.File storeDir)
Deprecated.void
sweepDisk()
Deprecated.Check all session files that do not belong to this context and remove any that expired long ago (ie at least 5 gracePeriods ago).void
sweepFile(long now, java.nio.file.Path p)
Deprecated.Check to see if the expiry on the file is very old, and delete the file if so.java.lang.String
toString()
Deprecated.-
Methods inherited from class org.eclipse.jetty.server.session.AbstractSessionDataStore
getExpired, getGracePeriodSec, getSavePeriodSec, load, newSessionData, setGracePeriodSec, setSavePeriodSec, store
-
Methods inherited from class org.eclipse.jetty.util.component.ContainerLifeCycle
addBean, addBean, addEventListener, addManaged, contains, destroy, dump, dump, dump, dump, dump, dumpObject, dumpStdErr, getBean, getBeans, getBeans, getContainedBeans, isAuto, isManaged, isUnmanaged, manage, removeBean, removeBeans, removeEventListener, setBeans, setStopTimeout, 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
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
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
-
-
-
-
Method Detail
-
initialize
public void initialize(SessionContext context) throws java.lang.Exception
Deprecated.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 interfaceSessionDataMap
- Overrides:
initialize
in classAbstractSessionDataStore
- Parameters:
context
- context associated- Throws:
java.lang.Exception
- if unable to initialize the
-
getStoreDir
@ManagedAttribute(value="dir where sessions are stored", readonly=true) public java.io.File getStoreDir()
Deprecated.
-
setStoreDir
public void setStoreDir(java.io.File storeDir)
Deprecated.
-
isDeleteUnrestorableFiles
public boolean isDeleteUnrestorableFiles()
Deprecated.
-
setDeleteUnrestorableFiles
public void setDeleteUnrestorableFiles(boolean deleteUnrestorableFiles)
Deprecated.
-
delete
public boolean delete(java.lang.String id) throws java.lang.Exception
Deprecated.Delete a session- Parameters:
id
- session id- Returns:
- true if the session was deleted
- Throws:
java.lang.Exception
- if unable to delete session data
-
deleteFile
public boolean deleteFile(java.lang.String filename) throws java.lang.Exception
Deprecated.Delete the file associated with a session- Parameters:
filename
- name of the file containing the session's information- Returns:
- true if file was deleted, false otherwise
- Throws:
java.lang.Exception
- indicating delete failure
-
doGetExpired
public java.util.Set<java.lang.String> doGetExpired(java.util.Set<java.lang.String> candidates)
Deprecated.Check to see which sessions have expired.- Specified by:
doGetExpired
in classAbstractSessionDataStore
- 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
-
sweepDisk
public void sweepDisk()
Deprecated.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)
Deprecated.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. The session can belong to any context.- Parameters:
now
- the time now in msecp
- the file to check
-
doLoad
public SessionData doLoad(java.lang.String id) throws java.lang.Exception
Deprecated.Description copied from class:AbstractSessionDataStore
Load the session from persistent store.- Specified by:
doLoad
in classAbstractSessionDataStore
- Parameters:
id
- the id of the session to load- Returns:
- the re-inflated session
- Throws:
java.lang.Exception
- if unable to load the session
-
doStore
public void doStore(java.lang.String id, SessionData data, long lastSaveTime) throws java.lang.Exception
Deprecated.Description copied from class:AbstractSessionDataStore
Store the session data persistently.- Specified by:
doStore
in classAbstractSessionDataStore
- Parameters:
id
- identity of session to storedata
- info of the sessionlastSaveTime
- time of previous save or 0 if never saved- Throws:
java.lang.Exception
- if unable to store data
-
initializeStore
public void initializeStore() throws java.lang.Exception
Deprecated.Read the names of the existing session files and build a map of fully qualified session ids (ie with context) to filename. If there is more than one file for the same session, only the most recently modified will be kept and the rest deleted. At the same time, any files - for any context - that expired a long time ago will be cleaned up.- Throws:
java.lang.Exception
- if storeDir doesn't exist, isn't readable/writeable or contains 2 files with the same lastmodify time for the same session. Throws IOException if the lastmodifytimes can't be read.
-
isPassivating
@ManagedAttribute(value="are sessions serialized by this store", readonly=true) public boolean isPassivating()
Deprecated.Description copied from interface:SessionDataStore
True if this type of datastore will passivate session objects- Returns:
- true if this store can passivate sessions, false otherwise
-
exists
public boolean exists(java.lang.String id) throws java.lang.Exception
Deprecated.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
- Throws:
java.lang.Exception
- if problem checking existence with persistence layer
-
toString
public java.lang.String toString()
Deprecated.- Overrides:
toString
in classAbstractSessionDataStore
-
-