NAME

Wombat::SessionManager::StandardSessionManager - caching session manager implementation

SYNOPSIS

DESCRIPTION

Subclass of Wombat::SessionManager::SessionManagerBase that uses an implementation of Cache::Cache to manage a lightweight cache of sessions. Typically Cache::MemoryCache will be used in single-process scenarios; Cache::SharedMemoryCache is useful for multi-process deployments. This class does not support any persistence or distributable capabilities.

CONSTRUCTOR

new()

Construct and return a Wombat::SessionManager::StandardSessionManager instance, initializing fields appropriately. If subclasses override the constructor, they must be sure to call

$self->SUPER::new();

ACCESSOR METHODS

getCacheClass()

Return the cache class for this SessionManager.

setCacheClass($class)

Set the cache class for this SessionManager.

Parameters:

$class

the Cache::Cache implementation to use for the cache

PUBLIC METHODS

PACKAGE METHODS

add($session)

Add this Session to the cache of active Sessions for this SessionManager.

Parameters:

$session

the Wombat::Session to be added

getName()

Return the display name of this SessionManager.

getSession($id)

Return the active Session cached by this SessionManager with the specified id, or undef if no session exists with that id.

Parameters:

$id

the id for the Session to be returned

getSessions()

Return an array containing the active Sessions cached by this SessionManager.

remove($session)

Remove this Session from this SessionManager's cache.

Parameters:

$session

the Wombat::Session to remove

save($session)

Write the current state of this Session to this SessionManager's cache.

Parameters:

$session

the Wombat::Session to save

LIFECYCLE METHODS

start()

Prepare for active use of this SessionManager and initialize the session cache. This method should be called before any of the public methods of the SessionManager are utilized.

Throws:

Wombat::LifecycleException

if the SessionManager has already been started or if the cache cannot be initialized

SEE ALSO

Cache::Cache, Wombat::Container, Wombat::Core::Session, Wombat::SessionManager::SessionManagerBase

AUTHOR

Brian Moseley, bcm@maz.org