Apache Tomcat 7.0.37

org.apache.catalina.session
Class ManagerBase

java.lang.Object
  extended by org.apache.catalina.util.LifecycleBase
      extended by org.apache.catalina.util.LifecycleMBeanBase
          extended by org.apache.catalina.session.ManagerBase
All Implemented Interfaces:
PropertyChangeListener, EventListener, MBeanRegistration, Lifecycle, Manager
Direct Known Subclasses:
ClusterManagerBase, PersistentManagerBase, StandardManager

public abstract class ManagerBase
extends LifecycleMBeanBase
implements Manager, PropertyChangeListener

Minimal implementation of the Manager interface that supports no session persistence or distributable capabilities. This class may be subclassed to create more sophisticated Manager implementations.

Version:
$Id: ManagerBase.java 1346675 2012-06-05 23:59:01Z schultz $
Author:
Craig R. McClanahan

Nested Class Summary
protected static class ManagerBase.SessionTiming
           
 
Field Summary
protected  Container container
          The Container with which this Manager is associated.
protected  boolean distributable
          The distributable flag for Sessions created by this Manager.
protected  int duplicates
           
protected  AtomicLong expiredSessions
          Number of sessions that have expired.
protected  int maxActive
           
protected  int maxActiveSessions
          The maximum number of active Sessions allowed, or -1 for no limit.
protected  int maxInactiveInterval
          The default maximum inactive interval for Sessions created by this Manager.
protected  int processExpiresFrequency
          Frequency of the session expiration, and related manager operations.
protected  long processingTime
          Processing time during session expiration.
protected  int rejectedSessions
          Number of session creations that failed due to maxActiveSessions.
protected  String secureRandomAlgorithm
          The name of the algorithm to use to create instances of SecureRandom which are used to generate session IDs.
protected  String secureRandomClass
          The Java class name of the secure random number generator class to be used when generating session identifiers.
protected  String secureRandomProvider
          The name of the provider to use to create instances of SecureRandom which are used to generate session IDs.
protected  long sessionCounter
           
protected  Deque<ManagerBase.SessionTiming> sessionCreationTiming
           
protected  Deque<ManagerBase.SessionTiming> sessionExpirationTiming
           
protected  SessionIdGenerator sessionIdGenerator
           
protected  int sessionIdLength
          The session id length of Sessions created by this Manager.
protected  int sessionMaxAliveTime
          The longest time (in seconds) that an expired session had been alive.
protected  Map<String,Session> sessions
          The set of currently active Sessions for this Manager, keyed by session identifier.
protected static StringManager sm
          The string manager for this package.
protected  PropertyChangeSupport support
          The property change support for this component.
protected static int TIMING_STATS_CACHE_SIZE
           
 
Fields inherited from class org.apache.catalina.util.LifecycleMBeanBase
mserver
 
Fields inherited from interface org.apache.catalina.Lifecycle
AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
 
Constructor Summary
ManagerBase()
           
 
Method Summary
 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()
          Implements the Manager interface, direct call to processExpires
 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.
 void expireSession(String sessionId)
           
 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.
protected  String generateSessionId()
          Generate and return a new session identifier.
 int getActiveSessions()
          Returns the number of active sessions
 String getClassName()
          Returns the name of the implementation class.
 Container getContainer()
          Return the Container with which this Manager is associated.
 String getCreationTime(String sessionId)
           
 long getCreationTimestamp(String sessionId)
           
 boolean getDistributable()
          Return the distributable flag for the sessions supported by this Manager.
 String getDomainInternal()
          Method implemented by sub-classes to identify the domain in which MBeans should be registered.
 int getDuplicates()
          Number of duplicated session IDs generated by the random source.
 Engine getEngine()
          Retrieve the enclosing Engine for this Manager.
 long getExpiredSessions()
          Gets the number of sessions that have expired.
 String getInfo()
          Return descriptive information about this Manager implementation and the corresponding version number, in the format <description>/<version>.
 String getJvmRoute()
          Retrieve the JvmRoute for the enclosing Engine.
 String getLastAccessedTime(String sessionId)
           
 long getLastAccessedTimestamp(String sessionId)
           
 int getMaxActive()
          Max number of concurrent active sessions
 int getMaxActiveSessions()
          Return the maximum number of active Sessions allowed, or -1 for no limit.
 int getMaxInactiveInterval()
          Return the default maximum inactive interval (in seconds) for Sessions created by this Manager.
 String getName()
          Return the descriptive short name of this Manager implementation.
protected  StandardSession getNewSession()
          Get new session class to be used in the doLoad() method.
 String getObjectNameKeyProperties()
          Allow sub-classes to specify the key properties component of the ObjectName that will be used to register this component.
 int getProcessExpiresFrequency()
          Return the frequency of manager checks.
 long getProcessingTime()
           
 int getRejectedSessions()
          Number of session creations that failed due to maxActiveSessions
 String getSecureRandomAlgorithm()
          Return the secure random number generator algorithm name.
 String getSecureRandomClass()
          Return the secure random number generator class name.
 String getSecureRandomProvider()
          Return the secure random number generator provider name.
 HashMap<String,String> getSession(String sessionId)
          Returns information about the session with the given session id.
 String getSessionAttribute(String sessionId, String key)
          For debugging: get a session attribute
 int getSessionAverageAliveTime()
          Gets the average time (in seconds) that expired sessions had been alive based on the last 100 sessions to expire.
 long getSessionCounter()
          Total sessions created by this manager.
 int getSessionCreateRate()
          Gets the current rate of session creation (in session per minute) based on the creation time of the previous 100 sessions created.
 int getSessionExpireRate()
          Gets the current rate of session expiration (in session per minute) based on the expiry time of the previous 100 sessions expired.
 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.
 String getThisAccessedTime(String sessionId)
           
 long getThisAccessedTimestamp(String sessionId)
           
protected  void initInternal()
          Sub-classes wishing to perform additional initialization should override this method, ensuring that super.initInternal() is the first call in the overriding method.
 String listSessionIds()
          For debugging: return a list of all session ids currently active
 void processExpires()
          Invalidate all sessions that have expired.
 void propertyChange(PropertyChangeEvent event)
          Process property change events from our associated Context.
 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)
          Set the distributable flag for the sessions supported by this Manager.
 void setDuplicates(int duplicates)
           
 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 setMaxActiveSessions(int max)
          Set the maximum number of active Sessions allowed, or -1 for no limit.
 void setMaxInactiveInterval(int interval)
          Set the default maximum inactive interval (in seconds) for Sessions created by this Manager.
 void setProcessExpiresFrequency(int processExpiresFrequency)
          Set the manager checks frequency.
 void setProcessingTime(long processingTime)
           
 void setSecureRandomAlgorithm(String secureRandomAlgorithm)
          Set the secure random number generator algorithm name.
 void setSecureRandomClass(String secureRandomClass)
          Set the secure random number generator class name.
 void setSecureRandomProvider(String secureRandomProvider)
          Set the secure random number generator provider name.
 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.
protected  void startInternal()
          Sub-classes must ensure that the state is changed to LifecycleState.STARTING during the execution of this method.
protected  void stopInternal()
          Sub-classes must ensure that the state is changed to LifecycleState.STOPPING during the execution of this method.
 String toString()
          Return a String rendering of this object.
 void updateSessionMaxAliveTime(int sessionAliveTime)
          Updates the sessionMaxAliveTime attribute if the candidate value is larger than the current value.
 
Methods inherited from class org.apache.catalina.util.LifecycleMBeanBase
destroyInternal, getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister
 
Methods inherited from class org.apache.catalina.util.LifecycleBase
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, init, removeLifecycleListener, setState, setState, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.catalina.Manager
load, unload
 

Field Detail

container

protected Container container
The Container with which this Manager is associated.


distributable

protected boolean distributable
The distributable flag for Sessions created by this Manager. If this flag is set to true, any user attributes added to a session controlled by this Manager must be Serializable.


maxInactiveInterval

protected int maxInactiveInterval
The default maximum inactive interval for Sessions created by this Manager.


sessionIdLength

protected int sessionIdLength
The session id length of Sessions created by this Manager.


secureRandomClass

protected String secureRandomClass
The Java class name of the secure random number generator class to be used when generating session identifiers. The random number generator class must be self-seeding and have a zero-argument constructor. If not specified, an instance of SecureRandom will be generated.


secureRandomAlgorithm

protected String secureRandomAlgorithm
The name of the algorithm to use to create instances of SecureRandom which are used to generate session IDs. If no algorithm is specified, SHA1PRNG is used. To use the platform default (which may be SHA1PRNG), specify the empty string. If an invalid algorithm and/or provider is specified the SecureRandom instances will be created using the defaults. If that fails, the SecureRandom instances will be created using platform defaults.


secureRandomProvider

protected String secureRandomProvider
The name of the provider to use to create instances of SecureRandom which are used to generate session IDs. If no algorithm is specified the of SHA1PRNG default is used. If an invalid algorithm and/or provider is specified the SecureRandom instances will be created using the defaults. If that fails, the SecureRandom instances will be created using platform defaults.


sessionIdGenerator

protected SessionIdGenerator sessionIdGenerator

sessionMaxAliveTime

protected volatile int sessionMaxAliveTime
The longest time (in seconds) that an expired session had been alive.


TIMING_STATS_CACHE_SIZE

protected static final int TIMING_STATS_CACHE_SIZE
See Also:
Constant Field Values

sessionCreationTiming

protected final Deque<ManagerBase.SessionTiming> sessionCreationTiming

sessionExpirationTiming

protected final Deque<ManagerBase.SessionTiming> sessionExpirationTiming

expiredSessions

protected final AtomicLong expiredSessions
Number of sessions that have expired.


sessions

protected Map<String,Session> sessions
The set of currently active Sessions for this Manager, keyed by session identifier.


sessionCounter

protected long sessionCounter

maxActive

protected volatile int maxActive

maxActiveSessions

protected int maxActiveSessions
The maximum number of active Sessions allowed, or -1 for no limit.


rejectedSessions

protected int rejectedSessions
Number of session creations that failed due to maxActiveSessions.


duplicates

protected volatile int duplicates

processingTime

protected long processingTime
Processing time during session expiration.


processExpiresFrequency

protected int processExpiresFrequency
Frequency of the session expiration, and related manager operations. Manager operations will be done once for the specified amount of backgrondProcess calls (ie, the lower the amount, the most often the checks will occur).


sm

protected static final StringManager sm
The string manager for this package.


support

protected final PropertyChangeSupport support
The property change support for this component.

Constructor Detail

ManagerBase

public ManagerBase()
Method Detail

getContainer

public Container getContainer()
Return the Container with which this Manager is associated.

Specified by:
getContainer in interface Manager

setContainer

public void setContainer(Container container)
Set the Container with which this Manager is associated.

Specified by:
setContainer in interface Manager
Parameters:
container - The newly associated Container

getClassName

public String getClassName()
Returns the name of the implementation class.


getDistributable

public boolean getDistributable()
Return the distributable flag for the sessions supported by this Manager.

Specified by:
getDistributable in interface Manager

setDistributable

public void setDistributable(boolean distributable)
Set the distributable flag for the sessions supported by this Manager. If this flag is set, all user data objects added to sessions associated with this manager must implement Serializable.

Specified by:
setDistributable in interface Manager
Parameters:
distributable - The new distributable flag

getInfo

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

Specified by:
getInfo in interface Manager

getMaxInactiveInterval

public int getMaxInactiveInterval()
Return the default maximum inactive interval (in seconds) for Sessions created by this Manager.

Specified by:
getMaxInactiveInterval in interface Manager

setMaxInactiveInterval

public void setMaxInactiveInterval(int interval)
Set the default maximum inactive interval (in seconds) for Sessions created by this Manager.

Specified by:
setMaxInactiveInterval in interface Manager
Parameters:
interval - The new default value

getSessionIdLength

public int getSessionIdLength()
Gets the session id length (in bytes) of Sessions created by this Manager.

Specified by:
getSessionIdLength in interface Manager
Returns:
The session id length

setSessionIdLength

public void setSessionIdLength(int idLength)
Sets the session id length (in bytes) for Sessions created by this Manager.

Specified by:
setSessionIdLength in interface Manager
Parameters:
idLength - The session id length

getName

public String getName()
Return the descriptive short name of this Manager implementation.


getSecureRandomClass

public String getSecureRandomClass()
Return the secure random number generator class name.


setSecureRandomClass

public void setSecureRandomClass(String secureRandomClass)
Set the secure random number generator class name.

Parameters:
secureRandomClass - The new secure random number generator class name

getSecureRandomAlgorithm

public String getSecureRandomAlgorithm()
Return the secure random number generator algorithm name.


setSecureRandomAlgorithm

public void setSecureRandomAlgorithm(String secureRandomAlgorithm)
Set the secure random number generator algorithm name.

Parameters:
secureRandomAlgorithm - The new secure random number generator algorithm name

getSecureRandomProvider

public String getSecureRandomProvider()
Return the secure random number generator provider name.


setSecureRandomProvider

public void setSecureRandomProvider(String secureRandomProvider)
Set the secure random number generator provider name.

Parameters:
secureRandomProvider - The new secure random number generator provider name

getRejectedSessions

public int getRejectedSessions()
Number of session creations that failed due to maxActiveSessions

Specified by:
getRejectedSessions in interface Manager
Returns:
The count

getExpiredSessions

public long getExpiredSessions()
Gets the number of sessions that have expired.

Specified by:
getExpiredSessions in interface Manager
Returns:
Number of sessions that have expired

setExpiredSessions

public void setExpiredSessions(long expiredSessions)
Sets the number of sessions that have expired.

Specified by:
setExpiredSessions in interface Manager
Parameters:
expiredSessions - Number of sessions that have expired

getProcessingTime

public long getProcessingTime()

setProcessingTime

public void setProcessingTime(long processingTime)

getProcessExpiresFrequency

public int getProcessExpiresFrequency()
Return the frequency of manager checks.


setProcessExpiresFrequency

public void setProcessExpiresFrequency(int processExpiresFrequency)
Set the manager checks frequency.

Parameters:
processExpiresFrequency - the new manager checks frequency

backgroundProcess

public void backgroundProcess()
Implements the Manager interface, direct call to processExpires

Specified by:
backgroundProcess in interface Manager

processExpires

public void processExpires()
Invalidate all sessions that have expired.


initInternal

protected void initInternal()
                     throws LifecycleException
Description copied from class: LifecycleMBeanBase
Sub-classes wishing to perform additional initialization should override this method, ensuring that super.initInternal() is the first call in the overriding method.

Overrides:
initInternal in class LifecycleMBeanBase
Throws:
LifecycleException

startInternal

protected void startInternal()
                      throws LifecycleException
Description copied from class: LifecycleBase
Sub-classes must ensure that the state is changed to LifecycleState.STARTING during the execution of this method. Changing state will trigger the Lifecycle.START_EVENT event. If a component fails to start it may either throw a LifecycleException which will cause it's parent to fail to start or it can place itself in the error state in which case LifecycleBase.stop() will be called on the failed component but the parent component will continue to start normally.

Specified by:
startInternal in class LifecycleBase
Throws:
LifecycleException

stopInternal

protected void stopInternal()
                     throws LifecycleException
Description copied from class: LifecycleBase
Sub-classes must ensure that the state is changed to LifecycleState.STOPPING during the execution of this method. Changing state will trigger the Lifecycle.STOP_EVENT event.

Specified by:
stopInternal in class LifecycleBase
Throws:
LifecycleException

add

public void add(Session session)
Add this Session to the set of active Sessions for this Manager.

Specified by:
add in interface Manager
Parameters:
session - Session to be added

addPropertyChangeListener

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

Specified by:
addPropertyChangeListener in interface Manager
Parameters:
listener - The listener to add

createSession

public Session createSession(String sessionId)
Construct and return a new session object, based on the default settings specified by this Manager's properties. The session id specified will be used as the session id. If a new session cannot be created for any reason, return null.

Specified by:
createSession in interface Manager
Parameters:
sessionId - The session id which should be used to create the new session; if null, a new session id will be generated
Throws:
IllegalStateException - if a new session cannot be instantiated for any reason

createEmptySession

public Session createEmptySession()
Get a session from the recycled ones or create a new empty one. The PersistentManager manager does not need to create session data because it reads it from the Store.

Specified by:
createEmptySession in interface Manager

findSession

public Session findSession(String id)
                    throws IOException
Return the active Session, associated with this Manager, with the specified session id (if any); otherwise return null.

Specified by:
findSession in interface Manager
Parameters:
id - The session id for the session to be returned
Throws:
IllegalStateException - if a new session cannot be instantiated for any reason
IOException - if an input/output error occurs while processing this request

findSessions

public Session[] findSessions()
Return the set of active Sessions associated with this Manager. If this Manager has no active Sessions, a zero-length array is returned.

Specified by:
findSessions in interface Manager

remove

public void remove(Session session)
Remove this Session from the active Sessions for this Manager.

Specified by:
remove in interface Manager
Parameters:
session - Session to be removed

remove

public void remove(Session session,
                   boolean update)
Remove this Session from the active Sessions for this Manager.

Specified by:
remove in interface Manager
Parameters:
session - Session to be removed
update - Should the expiration statistics be updated

removePropertyChangeListener

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

Specified by:
removePropertyChangeListener in interface Manager
Parameters:
listener - The listener to remove

changeSessionId

public void changeSessionId(Session session)
Change the session ID of the current session to a new randomly generated session ID.

Specified by:
changeSessionId in interface Manager
Parameters:
session - The session to change the session ID for

getNewSession

protected StandardSession getNewSession()
Get new session class to be used in the doLoad() method.


generateSessionId

protected String generateSessionId()
Generate and return a new session identifier.


getEngine

public Engine getEngine()
Retrieve the enclosing Engine for this Manager.

Returns:
an Engine object (or null).

getJvmRoute

public String getJvmRoute()
Retrieve the JvmRoute for the enclosing Engine.

Returns:
the JvmRoute or null.

setSessionCounter

public void setSessionCounter(long sessionCounter)
Description copied from interface: Manager
Sets the total number of sessions created by this manager.

Specified by:
setSessionCounter in interface Manager
Parameters:
sessionCounter - Total number of sessions created by this manager.

getSessionCounter

public long getSessionCounter()
Total sessions created by this manager.

Specified by:
getSessionCounter in interface Manager
Returns:
sessions created

getDuplicates

public int getDuplicates()
Number of duplicated session IDs generated by the random source. Anything bigger than 0 means problems.

Returns:
The count of duplicates

setDuplicates

public void setDuplicates(int duplicates)

getActiveSessions

public int getActiveSessions()
Returns the number of active sessions

Specified by:
getActiveSessions in interface Manager
Returns:
number of sessions active

getMaxActive

public int getMaxActive()
Max number of concurrent active sessions

Specified by:
getMaxActive in interface Manager
Returns:
The highest number of concurrent active sessions

setMaxActive

public void setMaxActive(int maxActive)
Description copied from interface: Manager
(Re)sets the maximum number of sessions that have been active at the same time.

Specified by:
setMaxActive in interface Manager
Parameters:
maxActive - Maximum number of sessions that have been active at the same time.

getMaxActiveSessions

public int getMaxActiveSessions()
Return the maximum number of active Sessions allowed, or -1 for no limit.


setMaxActiveSessions

public void setMaxActiveSessions(int max)
Set the maximum number of active Sessions allowed, or -1 for no limit.

Parameters:
max - The new maximum number of sessions

getSessionMaxAliveTime

public int getSessionMaxAliveTime()
Gets the longest time (in seconds) that an expired session had been alive.

Specified by:
getSessionMaxAliveTime in interface Manager
Returns:
Longest time (in seconds) that an expired session had been alive.

setSessionMaxAliveTime

public void setSessionMaxAliveTime(int sessionMaxAliveTime)
Sets the longest time (in seconds) that an expired session had been alive. Typically used for resetting the current value.

Specified by:
setSessionMaxAliveTime in interface Manager
Parameters:
sessionMaxAliveTime - Longest time (in seconds) that an expired session had been alive.

updateSessionMaxAliveTime

public void updateSessionMaxAliveTime(int sessionAliveTime)
Updates the sessionMaxAliveTime attribute if the candidate value is larger than the current value.

Parameters:
sessionAliveTime - The candidate value (in seconds) for the new sessionMaxAliveTime value.

getSessionAverageAliveTime

public int getSessionAverageAliveTime()
Gets the average time (in seconds) that expired sessions had been alive based on the last 100 sessions to expire. If less than 100 sessions have expired then all available data is used.

Specified by:
getSessionAverageAliveTime in interface Manager
Returns:
Average time (in seconds) that expired sessions had been alive.

getSessionCreateRate

public int getSessionCreateRate()
Gets the current rate of session creation (in session per minute) based on the creation time of the previous 100 sessions created. If less than 100 sessions have been created then all available data is used.

Specified by:
getSessionCreateRate in interface Manager
Returns:
The current rate (in sessions per minute) of session creation

getSessionExpireRate

public int getSessionExpireRate()
Gets the current rate of session expiration (in session per minute) based on the expiry time of the previous 100 sessions expired. If less than 100 sessions have expired then all available data is used.

Specified by:
getSessionExpireRate in interface Manager
Returns:
The current rate (in sessions per minute) of session expiration

listSessionIds

public String listSessionIds()
For debugging: return a list of all session ids currently active


getSessionAttribute

public String getSessionAttribute(String sessionId,
                                  String key)
For debugging: get a session attribute

Parameters:
sessionId -
key -
Returns:
The attribute value, if found, null otherwise

getSession

public HashMap<String,String> getSession(String sessionId)
Returns information about the session with the given session id.

The session information is organized as a HashMap, mapping session attribute names to the String representation of their values.

Parameters:
sessionId - Session id
Returns:
HashMap mapping session attribute names to the String representation of their values, or null if no session with the specified id exists, or if the session does not have any attributes

expireSession

public void expireSession(String sessionId)

getThisAccessedTimestamp

public long getThisAccessedTimestamp(String sessionId)

getThisAccessedTime

public String getThisAccessedTime(String sessionId)

getLastAccessedTimestamp

public long getLastAccessedTimestamp(String sessionId)

getLastAccessedTime

public String getLastAccessedTime(String sessionId)

getCreationTime

public String getCreationTime(String sessionId)

getCreationTimestamp

public long getCreationTimestamp(String sessionId)

toString

public String toString()
Return a String rendering of this object.

Overrides:
toString in class Object

getObjectNameKeyProperties

public String getObjectNameKeyProperties()
Description copied from class: LifecycleMBeanBase
Allow sub-classes to specify the key properties component of the ObjectName that will be used to register this component.

Specified by:
getObjectNameKeyProperties in class LifecycleMBeanBase
Returns:
The string representation of the key properties component of the desired ObjectName

getDomainInternal

public String getDomainInternal()
Description copied from class: LifecycleMBeanBase
Method implemented by sub-classes to identify the domain in which MBeans should be registered.

Specified by:
getDomainInternal in class LifecycleMBeanBase
Returns:
The name of the domain to use to register MBeans.

propertyChange

public void propertyChange(PropertyChangeEvent event)
Process property change events from our associated Context.

Specified by:
propertyChange in interface PropertyChangeListener
Parameters:
event - The property change event that has occurred

Apache Tomcat 7.0.37

Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.