public interface Manager
In order for a Manager
implementation to successfully operate
with a Context
implementation that implements reloading, it
must obey the following constraints:
Lifecycle
so that the Context can indicate
that a restart is required.
stop()
to be followed by a call to
start()
on the same Manager
instance.
Modifier and Type | Method and Description |
---|---|
void |
add(Session session)
Add this Session to the set of active Sessions for this Manager.
|
void |
addPropertyChangeListener(PropertyChangeListener listener)
Add a property change listener to this component.
|
void |
backgroundProcess()
This method will be invoked by the context/container on a periodic
basis and allows the manager to implement
a method that executes periodic tasks, such as expiring sessions etc.
|
void |
changeSessionId(Session session)
Change the session ID of the current session to a new randomly generated
session ID.
|
Session |
createEmptySession()
Get a session from the recycled ones or create a new empty one.
|
Session |
createSession(String sessionId)
Construct and return a new session object, based on the default
settings specified by this Manager's properties.
|
Session |
findSession(String id)
Return the active Session, associated with this Manager, with the
specified session id (if any); otherwise return
null . |
Session[] |
findSessions()
Return the set of active Sessions associated with this Manager.
|
int |
getActiveSessions()
Gets the number of currently active sessions.
|
Container |
getContainer()
Get the Container with which this Manager is associated.
|
boolean |
getDistributable()
Deprecated.
Ignored.
Context.getDistributable() always takes
precedence. Will be removed in Tomcat 8.5.x. |
long |
getExpiredSessions()
Gets the number of sessions that have expired.
|
String |
getInfo() |
int |
getMaxActive()
Gets the maximum number of sessions that have been active at the same
time.
|
int |
getMaxInactiveInterval()
Deprecated.
Ignored.
Context.getSessionTimeout() always takes
precedence. Will be removed in Tomcat 8.5.x. |
int |
getRejectedSessions()
Gets the number of sessions that were not created because the maximum
number of active sessions was reached.
|
int |
getSessionAverageAliveTime()
Gets the average time (in seconds) that expired sessions had been
alive.
|
long |
getSessionCounter()
Returns the total number of sessions created by this manager.
|
int |
getSessionCreateRate()
Gets the current rate of session creation (in session per minute).
|
int |
getSessionExpireRate()
Gets the current rate of session expiration (in session per minute).
|
int |
getSessionIdLength()
Gets the session id length (in bytes) of Sessions created by
this Manager.
|
int |
getSessionMaxAliveTime()
Gets the longest time (in seconds) that an expired session had been
alive.
|
void |
load()
Load any currently active sessions that were previously unloaded
to the appropriate persistence mechanism, if any.
|
void |
remove(Session session)
Remove this Session from the active Sessions for this Manager.
|
void |
remove(Session session,
boolean update)
Remove this Session from the active Sessions for this Manager.
|
void |
removePropertyChangeListener(PropertyChangeListener listener)
Remove a property change listener from this component.
|
void |
setContainer(Container container)
Set the Container with which this Manager is associated.
|
void |
setDistributable(boolean distributable)
Deprecated.
Ignored.
Context.getDistributable() always takes
precedence. Will be removed in Tomcat 8.5.x. |
void |
setExpiredSessions(long expiredSessions)
Sets the number of sessions that have expired.
|
void |
setMaxActive(int maxActive)
(Re)sets the maximum number of sessions that have been active at the
same time.
|
void |
setMaxInactiveInterval(int interval)
Deprecated.
Ignored.
Context.getSessionTimeout() always takes
precedence. Will be removed in Tomcat 8.5.x. |
void |
setSessionCounter(long sessionCounter)
Sets the total number of sessions created by this manager.
|
void |
setSessionIdLength(int idLength)
Sets the session id length (in bytes) for Sessions created by this
Manager.
|
void |
setSessionMaxAliveTime(int sessionMaxAliveTime)
Sets the longest time (in seconds) that an expired session had been
alive.
|
void |
unload()
Save any currently active sessions in the appropriate persistence
mechanism, if any.
|
boolean |
willAttributeDistribute(String name,
Object value)
Would the Manager distribute the given session attribute?
|
Container getContainer()
void setContainer(Container container)
null
value) that the Manager is
associated with.container
- The newly associated Container@Deprecated boolean getDistributable()
Context.getDistributable()
always takes
precedence. Will be removed in Tomcat 8.5.x.@Deprecated void setDistributable(boolean distributable)
Context.getDistributable()
always takes
precedence. Will be removed in Tomcat 8.5.x.distributable
- The new distributable flagString getInfo()
<description>/<version>
.@Deprecated int getMaxInactiveInterval()
Context.getSessionTimeout()
always takes
precedence. Will be removed in Tomcat 8.5.x.@Deprecated void setMaxInactiveInterval(int interval)
Context.getSessionTimeout()
always takes
precedence. Will be removed in Tomcat 8.5.x.interval
- The new default valueint getSessionIdLength()
void setSessionIdLength(int idLength)
idLength
- The session id lengthlong getSessionCounter()
void setSessionCounter(long sessionCounter)
sessionCounter
- Total number of sessions created by this manager.int getMaxActive()
void setMaxActive(int maxActive)
maxActive
- Maximum number of sessions that have been active at
the same time.int getActiveSessions()
long getExpiredSessions()
void setExpiredSessions(long expiredSessions)
expiredSessions
- Number of sessions that have expiredint getRejectedSessions()
int getSessionMaxAliveTime()
void setSessionMaxAliveTime(int sessionMaxAliveTime)
sessionMaxAliveTime
- Longest time (in seconds) that an expired
session had been alive.int getSessionAverageAliveTime()
int getSessionCreateRate()
int getSessionExpireRate()
void add(Session session)
session
- Session to be addedvoid addPropertyChangeListener(PropertyChangeListener listener)
listener
- The listener to addvoid changeSessionId(Session session)
session
- The session to change the session ID forSession createEmptySession()
Session createSession(String sessionId)
null
.sessionId
- The session id which should be used to create the
new session; if null
, the session
id will be assigned by this method, and available via the getId()
method of the returned session.IllegalStateException
- if a new session cannot be
instantiated for any reasonSession findSession(String id) throws IOException
null
.id
- The session id for the session to be returnednull
if a session with the
requested ID could not be foundIllegalStateException
- if a new session cannot be
instantiated for any reasonIOException
- if an input/output error occurs while
processing this requestSession[] findSessions()
void load() throws ClassNotFoundException, IOException
ClassNotFoundException
- if a serialized class cannot be
found during the reloadIOException
- if an input/output error occursvoid remove(Session session)
session
- Session to be removedvoid remove(Session session, boolean update)
session
- Session to be removedupdate
- Should the expiration statistics be updatedvoid removePropertyChangeListener(PropertyChangeListener listener)
listener
- The listener to removevoid unload() throws IOException
IOException
- if an input/output error occursvoid backgroundProcess()
boolean willAttributeDistribute(String name, Object value)
name
- The attribute namevalue
- The attribute valuetrue
if the Manager would distribute the given attribute
otherwise false
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.