The StateManagerService is a service that manages SessionState information. Each SessionState is identified by a unique key in this service. The SessionState is composed of name - value sets of attributes, stored under the key by the service.
See the proposal: jakarta-jetspeed/proposals/StateManager.txt for more details.
Attribute values placed into SessionStates may be automatically removed, for example when a SessionState expires in some way, or by means of some other automatic service. These value objects can be notified of their placement into and out of the SessionState. Objects that wish to receive this notification implement the SessionStateBindingListener interface. This is based on and similar to the HttpSessionBindingListener mechanism.
To support the "current" routines; the ability to get a session state based on the current http session, this service must be installed properly into the procssing of each http request. At the start of the request, the HttpSession of the request must be passed into the setCurrentContext() method. At the end of the request, clearCurrentContext() is called. For Jetspeed, this is done in the JetspeedRunDataService, which is always going to be called by Turbine in this way.
@version $Revision: 1.5 $
@see org.apache.jetspeed.services.statemanager.SessionState
@see org.apache.jetspeed.services.statemanager.SessionStateBindingListener
@author
Glenn R. Golden