org.eclipse.jetty.server.session
public class JDBCSessionIdManager extends AbstractSessionIdManager
Modifier and Type | Class and Description |
---|---|
class |
JDBCSessionIdManager.DatabaseAdaptor
DatabaseAdaptor
Handles differences between databases.
|
AbstractLifeCycle.AbstractLifeCycleListener
LifeCycle.Listener
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
_blobType |
protected java.lang.String |
_connectionUrl |
protected java.lang.String |
_createSessionIdTable |
protected java.lang.String |
_createSessionTable |
protected javax.sql.DataSource |
_datasource |
protected JDBCSessionIdManager.DatabaseAdaptor |
_dbAdaptor |
protected java.lang.String |
_deleteId |
protected java.lang.String |
_deleteOldExpiredSessions |
protected java.lang.String |
_deleteSession |
protected java.sql.Driver |
_driver |
protected java.lang.String |
_driverClassName |
protected java.lang.String |
_insertId |
protected java.lang.String |
_insertSession |
protected java.lang.String |
_jndiName |
protected long |
_lastScavengeTime |
protected java.lang.String |
_longType |
protected java.lang.String |
_queryId |
protected long |
_scavengeIntervalMs |
protected java.lang.String |
_selectBoundedExpiredSessions |
protected Server |
_server |
protected java.util.HashSet<java.lang.String> |
_sessionIds |
protected java.lang.String |
_sessionIdTable |
protected java.lang.String |
_sessionTable |
protected java.lang.String |
_sessionTableRowId |
protected java.util.TimerTask |
_task |
protected java.util.Timer |
_timer |
protected java.lang.String |
_updateSession |
protected java.lang.String |
_updateSessionAccessTime |
protected java.lang.String |
_updateSessionNode |
_random, _reseed, _weakRandom, _workerName
_listeners, FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING
Constructor and Description |
---|
JDBCSessionIdManager(Server server) |
JDBCSessionIdManager(Server server,
java.util.Random random) |
Modifier and Type | Method and Description |
---|---|
void |
addSession(javax.servlet.http.HttpSession session)
Add a session to the list of known sessions for a given ID.
|
void |
doStart()
Start up the id manager.
|
void |
doStop()
Stop the scavenger.
|
java.lang.String |
getBlobType() |
java.lang.String |
getClusterId(java.lang.String nodeId)
Get the session id without any node identifier suffix.
|
protected java.sql.Connection |
getConnection()
Get a connection from the driver or datasource.
|
java.lang.String |
getConnectionUrl() |
javax.sql.DataSource |
getDataSource() |
java.lang.String |
getDatasourceName() |
java.lang.String |
getDriverClassName() |
java.lang.String |
getLongType() |
java.lang.String |
getNodeId(java.lang.String clusterId,
javax.servlet.http.HttpServletRequest request)
Get the session id, including this node's id as a suffix.
|
long |
getScavengeInterval() |
boolean |
idInUse(java.lang.String id) |
void |
invalidateAll(java.lang.String id)
Invalidate the session matching the id on all contexts.
|
void |
removeSession(javax.servlet.http.HttpSession session)
Remove session from the list of known sessions for a given ID.
|
void |
removeSession(java.lang.String id) |
void |
setBlobType(java.lang.String name) |
void |
setDatasource(javax.sql.DataSource ds) |
void |
setDatasourceName(java.lang.String jndi) |
void |
setDriverInfo(java.sql.Driver driverClass,
java.lang.String connectionUrl)
Configure jdbc connection information via a jdbc Driver
|
void |
setDriverInfo(java.lang.String driverClassName,
java.lang.String connectionUrl)
Configure jdbc connection information via a jdbc Driver
|
void |
setLongType(java.lang.String longType) |
void |
setScavengeInterval(long sec) |
getRandom, getReseed, getWorkerName, initRandom, newSessionId, setRandom, setReseed, setWorkerName
addLifeCycleListener, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
addLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop
protected final java.util.HashSet<java.lang.String> _sessionIds
protected Server _server
protected java.sql.Driver _driver
protected java.lang.String _driverClassName
protected java.lang.String _connectionUrl
protected javax.sql.DataSource _datasource
protected java.lang.String _jndiName
protected java.lang.String _sessionIdTable
protected java.lang.String _sessionTable
protected java.lang.String _sessionTableRowId
protected java.util.Timer _timer
protected java.util.TimerTask _task
protected long _lastScavengeTime
protected long _scavengeIntervalMs
protected java.lang.String _blobType
protected java.lang.String _longType
protected java.lang.String _createSessionIdTable
protected java.lang.String _createSessionTable
protected java.lang.String _selectBoundedExpiredSessions
protected java.lang.String _deleteOldExpiredSessions
protected java.lang.String _insertId
protected java.lang.String _deleteId
protected java.lang.String _queryId
protected java.lang.String _insertSession
protected java.lang.String _deleteSession
protected java.lang.String _updateSession
protected java.lang.String _updateSessionNode
protected java.lang.String _updateSessionAccessTime
protected JDBCSessionIdManager.DatabaseAdaptor _dbAdaptor
public JDBCSessionIdManager(Server server)
public JDBCSessionIdManager(Server server, java.util.Random random)
public void setDriverInfo(java.lang.String driverClassName, java.lang.String connectionUrl)
driverClassName
- connectionUrl
- public void setDriverInfo(java.sql.Driver driverClass, java.lang.String connectionUrl)
driverClass
- connectionUrl
- public void setDatasource(javax.sql.DataSource ds)
public javax.sql.DataSource getDataSource()
public java.lang.String getDriverClassName()
public java.lang.String getConnectionUrl()
public void setDatasourceName(java.lang.String jndi)
public java.lang.String getDatasourceName()
public void setBlobType(java.lang.String name)
public java.lang.String getBlobType()
public java.lang.String getLongType()
public void setLongType(java.lang.String longType)
public void setScavengeInterval(long sec)
public long getScavengeInterval()
public void addSession(javax.servlet.http.HttpSession session)
SessionIdManager
session
- The sessionpublic void removeSession(javax.servlet.http.HttpSession session)
SessionIdManager
public void removeSession(java.lang.String id)
public java.lang.String getClusterId(java.lang.String nodeId)
SessionIdManager.getClusterId(java.lang.String)
public java.lang.String getNodeId(java.lang.String clusterId, javax.servlet.http.HttpServletRequest request)
clusterId
- The ID of the sessionrequest
- The request that for the session (or null)SessionIdManager.getNodeId(java.lang.String, javax.servlet.http.HttpServletRequest)
public boolean idInUse(java.lang.String id)
id
- The session ID without any cluster node extensionpublic void invalidateAll(java.lang.String id)
id
- The session ID without any cluster node extensionSessionIdManager.invalidateAll(java.lang.String)
public void doStart() throws java.lang.Exception
doStart
in class AbstractSessionIdManager
java.lang.Exception
public void doStop() throws java.lang.Exception
doStop
in class AbstractSessionIdManager
java.lang.Exception
protected java.sql.Connection getConnection() throws java.sql.SQLException
java.sql.SQLException
Copyright © 2014. All Rights Reserved.