@ManagedObject public class DefaultSessionIdManager extends ContainerLifeCycle implements SessionIdManager
HouseKeeperAbstractLifeCycle.AbstractLifeCycleListenerLifeCycle.ListenerContainer.InheritedListener, Container.Listener| Modifier and Type | Field and Description |
|---|---|
static String |
__NEW_SESSION_ID |
| Constructor and Description |
|---|
DefaultSessionIdManager(Server server) |
DefaultSessionIdManager(Server server,
Random random) |
| Modifier and Type | Method and Description |
|---|---|
void |
expireAll(String id)
Remove an id from use by telling all contexts to remove a session with this id.
|
String |
getExtendedId(String clusterId,
HttpServletRequest request)
Get the session ID with any worker ID.
|
String |
getId(String extendedId)
Get the session ID without any worker ID.
|
Random |
getRandom() |
long |
getReseed() |
Server |
getServer() |
Set<SessionHandler> |
getSessionHandlers()
Get SessionHandler for every context.
|
HouseKeeper |
getSessionHouseKeeper() |
String |
getWorkerName()
Get the workname.
|
void |
initRandom()
Set up a random number generator for the sessionids.
|
void |
invalidateAll(String id)
Invalidate all sessions on all contexts that share the same id.
|
boolean |
isIdInUse(String id) |
String |
newSessionId(HttpServletRequest request,
long created)
Create a new session id if necessary.
|
String |
newSessionId(long seedTerm) |
String |
renewSessionId(String oldClusterId,
String oldNodeId,
HttpServletRequest request)
Generate a new id for a session and update across
all SessionManagers.
|
void |
setRandom(Random random) |
void |
setReseed(long reseed)
Set the reseed probability.
|
void |
setServer(Server server) |
void |
setSessionHouseKeeper(HouseKeeper houseKeeper) |
void |
setWorkerName(String workerName)
Set the workername.
|
String |
toString() |
addBean, addBean, addEventListener, addManaged, contains, destroy, dump, dump, dump, dump, dump, dumpObject, dumpStdErr, getBean, getBeans, getBeans, getContainedBeans, isAuto, isManaged, isUnmanaged, manage, removeBean, removeBeans, removeEventListener, setBeans, setStopTimeout, unmanage, updateBean, updateBean, updateBeansaddLifeCycleListener, getState, getState, getStopTimeout, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stopequals, getClass, hashCode, notify, notifyAll, wait, wait, waitaddLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, start, stop, stopdumpContainer, dumpIterable, dumpMapEntries, dumpObjects, dumpSelf, namedpublic static final String __NEW_SESSION_ID
public DefaultSessionIdManager(Server server)
server - the server associated with the id managerpublic void setServer(Server server)
server - the server associated with this id managerpublic Server getServer()
public void setSessionHouseKeeper(HouseKeeper houseKeeper)
setSessionHouseKeeper in interface SessionIdManagerhouseKeeper - the housekeeperpublic HouseKeeper getSessionHouseKeeper()
getSessionHouseKeeper in interface SessionIdManager@ManagedAttribute(value="unique name for this node", readonly=true) public String getWorkerName()
getWorkerName in interface SessionIdManagerpublic void setWorkerName(String workerName)
workerName - the name of the worker, if null it is coerced to empty stringpublic Random getRandom()
public void setRandom(Random random)
random - a random number generator for generating idspublic long getReseed()
public void setReseed(long reseed)
reseed - If non zero then when a random long modulo the reseed value == 1, the SecureRandom will be reseeded.public String newSessionId(HttpServletRequest request, long created)
newSessionId in interface SessionIdManagerrequest - the request with the sesioncreated - the timestamp for when the session was createdSessionIdManager.newSessionId(javax.servlet.http.HttpServletRequest, long)public String newSessionId(long seedTerm)
seedTerm - the seed for RNGpublic boolean isIdInUse(String id)
isIdInUse in interface SessionIdManagerid - The plain session ID (ie no workername extension)SessionIdManager.isIdInUse(java.lang.String)public void initRandom()
public String getExtendedId(String clusterId, HttpServletRequest request)
getExtendedId in interface SessionIdManagerclusterId - the cluster idrequest - the requestpublic String getId(String extendedId)
getId in interface SessionIdManagerextendedId - the session id with the worker extensionpublic void expireAll(String id)
expireAll in interface SessionIdManagerid - The session ID without any cluster node extensionSessionIdManager.expireAll(java.lang.String)public void invalidateAll(String id)
SessionIdManagerinvalidateAll in interface SessionIdManagerid - the session idpublic String renewSessionId(String oldClusterId, String oldNodeId, HttpServletRequest request)
renewSessionId in interface SessionIdManageroldClusterId - the old plain session idoldNodeId - the old fully qualified idrequest - the request containing the sessionSessionIdManager.renewSessionId(java.lang.String, java.lang.String, javax.servlet.http.HttpServletRequest)public Set<SessionHandler> getSessionHandlers()
getSessionHandlers in interface SessionIdManagerpublic String toString()
toString in class AbstractLifeCycleObject.toString()Copyright © 2010 - 2020 Adobe. All Rights Reserved