org.apache.catalina

Interface Store

Known Implementing Classes:
FileStore, JDBCStore, StoreBase

public interface Store

A Store is the abstraction of a Catalina component that provides persistent storage and loading of Sessions and their associated user data. Implementations are free to save and load the Sessions to any media they wish, but it is assumed that saved Sessions are persistent across server or context restarts.

Version:
$Revision: 1.2 $ $Date: 2004/02/27 14:58:39 $

Author:
Craig R. McClanahan

Method Summary

void
addPropertyChangeListener(PropertyChangeListener listener)
Add a property change listener to this component.
void
clear()
Remove all Sessions from this Store.
String
getInfo()
Return descriptive information about this Store implementation and the corresponding version number, in the format <description>/<version>.
Manager
getManager()
Return the Manager instance associated with this Store.
int
getSize()
Return the number of Sessions present in 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
removePropertyChangeListener(PropertyChangeListener listener)
Remove a property change listener from this component.
void
save(Session session)
Save the specified Session into this Store.
void
setManager(Manager manager)
Set the Manager associated with this Store.

Method Details

addPropertyChangeListener

public void addPropertyChangeListener(PropertyChangeListener listener)
Add a property change listener to this component.

Parameters:
listener - The listener to add


clear

public void clear()
            throws IOException
Remove all Sessions from this Store.


getInfo

public String getInfo()
Return descriptive information about this Store implementation and the corresponding version number, in the format <description>/<version>.


getManager

public Manager getManager()
Return the Manager instance associated with this Store.


getSize

public int getSize()
            throws IOException
Return the number of Sessions present in this Store.


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.


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, return null.

Parameters:
id - Session identifier of the session to load


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


removePropertyChangeListener

public void removePropertyChangeListener(PropertyChangeListener listener)
Remove a property change listener from this component.

Parameters:
listener - The listener to remove


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


setManager

public void setManager(Manager manager)
Set the Manager associated with this Store.

Parameters:
manager - The Manager which will use this Store.


Copyright B) 2000-2003 Apache Software Foundation. All Rights Reserved.