Package org.apache.catalina.session
Class FileStore
- java.lang.Object
-
- org.apache.catalina.session.StoreBase
-
- org.apache.catalina.session.FileStore
-
public final class FileStore extends StoreBase
Concrete implementation of the Store interface that utilizes a file per saved Session in a configured directory. Sessions that are saved are still subject to being expired based on inactivity.- Version:
- $Revision: 1.4 $ $Date: 2007/01/04 01:31:57 $
- Author:
- Craig R. McClanahan
-
-
Field Summary
-
Fields inherited from class org.apache.catalina.session.StoreBase
debug, lifecycle, manager, started, support
-
Fields inherited from interface org.apache.catalina.Lifecycle
AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, INIT_EVENT, START_EVENT, STOP_EVENT
-
-
Constructor Summary
Constructors Constructor Description FileStore()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clear()
Remove all of the Sessions in this Store.String
getDirectory()
Return the directory path for this Store.String
getInfo()
Return descriptive information about this Store implementation and the corresponding version number, in the format<description>/<version>
.int
getSize()
Return the number of Sessions present in this Store.String
getStoreName()
Return the name for this Store, used for logging.String
getThreadName()
Return the thread name for this Store.String[]
keys()
Return an array containing the session identifiers of all Sessions currently saved in this Store.Session
load(String id)
Load and return the Session associated with the specified session identifier from this Store, without removing it.void
remove(String id)
Remove the Session with the specified session identifier from this Store, if present.void
save(Session session)
Save the specified Session into this Store.void
setDirectory(String path)
Set the directory path for this Store.-
Methods inherited from class org.apache.catalina.session.StoreBase
addLifecycleListener, addPropertyChangeListener, doProcessExpires, findLifecycleListeners, getDebug, getManager, load, log, processExpires, readSession, removeFromStoreCache, removeLifecycleListener, removePropertyChangeListener, setDebug, setManager, start, stop, writeSession
-
-
-
-
Method Detail
-
getDirectory
public String getDirectory()
Return the directory path for this Store.
-
setDirectory
public void setDirectory(String path)
Set the directory path for this Store.- Parameters:
path
- The new directory path
-
getInfo
public String getInfo()
Return descriptive information about this Store implementation and the corresponding version number, in the format<description>/<version>
.
-
getThreadName
public String getThreadName()
Return the thread name for this Store.
-
getStoreName
public String getStoreName()
Return the name for this Store, used for logging.- Overrides:
getStoreName
in classStoreBase
-
getSize
public int getSize() throws IOException
Return the number of Sessions present in this Store.- Throws:
IOException
- if an input/output error occurs
-
clear
public void clear() throws IOException
Remove all of the Sessions in this Store.- Throws:
IOException
- if an input/output error occurs
-
keys
public String[] keys() throws IOException
Return an array containing the session identifiers of all Sessions currently saved in this Store. If there are no such Sessions, a zero-length array is returned.- Throws:
IOException
- if an input/output error occurred
-
load
public Session load(String id) throws ClassNotFoundException, IOException
Load and return the Session associated with the specified session identifier from this Store, without removing it. If there is no such stored Session, returnnull
.- Parameters:
id
- Session identifier of the session to load- Throws:
ClassNotFoundException
- if a deserialization error occursIOException
- if an input/output error occurs
-
remove
public void remove(String id) throws IOException
Remove the Session with the specified session identifier from this Store, if present. If no such Session is present, this method takes no action.- Parameters:
id
- Session identifier of the Session to be removed- Throws:
IOException
- if an input/output error occurs
-
save
public void save(Session session) throws IOException
Save the specified Session into this Store. Any previously saved information for the associated session identifier is replaced.- Parameters:
session
- Session to be saved- Throws:
IOException
- if an input/output error occurs
-
-