blob: 5a22f2cb082bd9709bc5c9512f51ef3ea81bf561 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (version 1.7.0_80) on Wed Jun 07 15:10:55 EDT 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>MongoSessionIdManager (Jetty :: Project 9.2.22.v20170606 API)</title>
<meta name="date" content="2017-06-07">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="MongoSessionIdManager (Jetty :: Project 9.2.22.v20170606 API)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/MongoSessionIdManager.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-1149868-7']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.Purger.html" title="class in org.eclipse.jetty.nosql.mongodb"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html" target="_top">Frames</a></li>
<li><a href="MongoSessionIdManager.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.eclipse.jetty.nosql.mongodb</div>
<h2 title="Class MongoSessionIdManager" class="title">Class MongoSessionIdManager</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">org.eclipse.jetty.util.component.AbstractLifeCycle</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html" title="class in org.eclipse.jetty.server.session">org.eclipse.jetty.server.session.AbstractSessionIdManager</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.jetty.nosql.mongodb.MongoSessionIdManager</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../org/eclipse/jetty/server/SessionIdManager.html" title="interface in org.eclipse.jetty.server">SessionIdManager</a>, <a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">MongoSessionIdManager</span>
extends <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html" title="class in org.eclipse.jetty.server.session">AbstractSessionIdManager</a></pre>
<div class="block">Based partially on the JDBCSessionIdManager.
Theory is that we really only need the session id manager for the local
instance so we have something to scavenge on, namely the list of known ids
This class has a timer that runs a periodic scavenger thread to query
for all id's known to this node whose precalculated expiry time has passed.
These found sessions are then run through the invalidateAll(id) method that
is a bit hinky but is supposed to notify all handlers this id is now DOA and
ought to be cleaned up. this ought to result in a save operation on the session
that will change the valid field to false (this conjecture is unvalidated atm)</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested_class_summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected class&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.Purger.html" title="class in org.eclipse.jetty.nosql.mongodb">MongoSessionIdManager.Purger</a></strong></code>
<div class="block">Purger</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected class&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.Scavenger.html" title="class in org.eclipse.jetty.nosql.mongodb">MongoSessionIdManager.Scavenger</a></strong></code>
<div class="block">Scavenger</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="nested_classes_inherited_from_class_org.eclipse.jetty.util.component.AbstractLifeCycle">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.AbstractLifeCycleListener.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle.AbstractLifeCycleListener</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="nested_classes_inherited_from_class_org.eclipse.jetty.util.component.LifeCycle">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></h3>
<code><a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.Listener.html" title="interface in org.eclipse.jetty.util.component">LifeCycle.Listener</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/jetty/server/Server.html" title="class in org.eclipse.jetty.server">Server</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#_server">_server</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="http://docs.oracle.com/javase/7/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#_sessionsIds">_sessionsIds</a></strong></code>
<div class="block">the collection of session ids known to this manager
TODO consider if this ought to be concurrent or not</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.eclipse.jetty.server.session.AbstractSessionIdManager">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.jetty.server.session.<a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html" title="class in org.eclipse.jetty.server.session">AbstractSessionIdManager</a></h3>
<code><a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#_random">_random</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#_reseed">_reseed</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#_weakRandom">_weakRandom</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#_workerAttr">_workerAttr</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#_workerName">_workerName</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.eclipse.jetty.util.component.AbstractLifeCycle">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#FAILED">FAILED</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#RUNNING">RUNNING</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#STARTED">STARTED</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#STARTING">STARTING</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#STOPPED">STOPPED</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#STOPPING">STOPPING</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#MongoSessionIdManager(org.eclipse.jetty.server.Server)">MongoSessionIdManager</a></strong>(<a href="../../../../../org/eclipse/jetty/server/Server.html" title="class in org.eclipse.jetty.server">Server</a>&nbsp;server)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#MongoSessionIdManager(org.eclipse.jetty.server.Server,%20com.mongodb.DBCollection)">MongoSessionIdManager</a></strong>(<a href="../../../../../org/eclipse/jetty/server/Server.html" title="class in org.eclipse.jetty.server">Server</a>&nbsp;server,
com.mongodb.DBCollection&nbsp;sessions)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#addSession(javax.servlet.http.HttpSession)">addSession</a></strong>(<a href="http://docs.oracle.com/javaee/7/api/javax/servlet/http/HttpSession.html?is-external=true" title="class or interface in javax.servlet.http">HttpSession</a>&nbsp;session)</code>
<div class="block">Add a session to the list of known sessions for a given ID.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#doStart()">doStart</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#doStop()">doStop</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#expireAll(java.lang.String)">expireAll</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sessionId)</code>
<div class="block">Expire this session for all contexts that are sharing the session
id.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#getPurgeInvalidAge()">getPurgeInvalidAge</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#getPurgeValidAge()">getPurgeValidAge</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>com.mongodb.DBCollection</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#getSessions()">getSessions</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#idInUse(java.lang.String)">idInUse</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sessionId)</code>
<div class="block">Searches database to find if the session id known to mongo, and is it valid</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#invalidateAll(java.lang.String)">invalidateAll</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sessionId)</code>
<div class="block">Remove the session id from the list of in-use sessions.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#isPurgeEnabled()">isPurgeEnabled</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#purge()">purge</a></strong>()</code>
<div class="block">Purge is a process that cleans the mongodb cluster of old sessions that are no
longer valid.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#purgeFully()">purgeFully</a></strong>()</code>
<div class="block">Purge is a process that cleans the mongodb cluster of old sessions that are no
longer valid.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#removeSession(javax.servlet.http.HttpSession)">removeSession</a></strong>(<a href="http://docs.oracle.com/javaee/7/api/javax/servlet/http/HttpSession.html?is-external=true" title="class or interface in javax.servlet.http">HttpSession</a>&nbsp;session)</code>
<div class="block">Remove session from the list of known sessions for a given ID.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#renewSessionId(java.lang.String,%20java.lang.String,%20javax.servlet.http.HttpServletRequest)">renewSessionId</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;oldClusterId,
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;oldNodeId,
<a href="http://docs.oracle.com/javaee/7/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</a>&nbsp;request)</code>
<div class="block">Change the existing session id.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#scavenge()">scavenge</a></strong>()</code>
<div class="block">Scavenge is a process that periodically checks the tracked session
ids of this given instance of the session id manager to see if they
are past the point of expiration.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#scavengeFully()">scavengeFully</a></strong>()</code>
<div class="block">ScavengeFully will expire all sessions.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#setPurge(boolean)">setPurge</a></strong>(boolean&nbsp;purge)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#setPurgeDelay(long)">setPurgeDelay</a></strong>(long&nbsp;purgeDelay)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#setPurgeInvalidAge(long)">setPurgeInvalidAge</a></strong>(long&nbsp;purgeValidAge)</code>
<div class="block">sets how old a session is to be persisted past the point it is
no longer valid</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#setPurgeValidAge(long)">setPurgeValidAge</a></strong>(long&nbsp;purgeValidAge)</code>
<div class="block">sets how old a session is to be persist past the point it is
considered no longer viable and should be removed
NOTE: set this value to 0 to disable purging of valid sessions</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html#setScavengePeriod(long)">setScavengePeriod</a></strong>(long&nbsp;scavengePeriod)</code>
<div class="block">The period in seconds between scavenge checks.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.eclipse.jetty.server.session.AbstractSessionIdManager">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.server.session.<a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html" title="class in org.eclipse.jetty.server.session">AbstractSessionIdManager</a></h3>
<code><a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#getClusterId(java.lang.String)">getClusterId</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#getNodeId(java.lang.String,%20javax.servlet.http.HttpServletRequest)">getNodeId</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#getRandom()">getRandom</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#getReseed()">getReseed</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#getWorkerName()">getWorkerName</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#initRandom()">initRandom</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#newSessionId(javax.servlet.http.HttpServletRequest,%20long)">newSessionId</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#newSessionId(long)">newSessionId</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#setRandom(java.util.Random)">setRandom</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#setReseed(long)">setReseed</a>, <a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#setWorkerName(java.lang.String)">setWorkerName</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.eclipse.jetty.util.component.AbstractLifeCycle">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.util.component.<a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3>
<code><a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#addLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">addLifeCycleListener</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#getState()">getState</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#getState(org.eclipse.jetty.util.component.LifeCycle)">getState</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#getStopTimeout()">getStopTimeout</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#isFailed()">isFailed</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#isRunning()">isRunning</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#isStarted()">isStarted</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#isStarting()">isStarting</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#isStopped()">isStopped</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#isStopping()">isStopping</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#removeLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">removeLifeCycleListener</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#setStopTimeout(long)">setStopTimeout</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#start()">start</a>, <a href="../../../../../org/eclipse/jetty/util/component/AbstractLifeCycle.html#stop()">stop</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long,%20int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.eclipse.jetty.util.component.LifeCycle">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.jetty.util.component.<a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></h3>
<code><a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html#addLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">addLifeCycleListener</a>, <a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html#isFailed()">isFailed</a>, <a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html#isRunning()">isRunning</a>, <a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html#isStarted()">isStarted</a>, <a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html#isStarting()">isStarting</a>, <a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html#isStopped()">isStopped</a>, <a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html#isStopping()">isStopping</a>, <a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html#removeLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">removeLifeCycleListener</a>, <a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html#start()">start</a>, <a href="../../../../../org/eclipse/jetty/util/component/LifeCycle.html#stop()">stop</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="_server">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>_server</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/jetty/server/Server.html" title="class in org.eclipse.jetty.server">Server</a> _server</pre>
</li>
</ul>
<a name="_sessionsIds">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>_sessionsIds</h4>
<pre>protected final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt; _sessionsIds</pre>
<div class="block">the collection of session ids known to this manager
TODO consider if this ought to be concurrent or not</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="MongoSessionIdManager(org.eclipse.jetty.server.Server)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>MongoSessionIdManager</h4>
<pre>public&nbsp;MongoSessionIdManager(<a href="../../../../../org/eclipse/jetty/server/Server.html" title="class in org.eclipse.jetty.server">Server</a>&nbsp;server)
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/net/UnknownHostException.html?is-external=true" title="class or interface in java.net">UnknownHostException</a>,
com.mongodb.MongoException</pre>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/net/UnknownHostException.html?is-external=true" title="class or interface in java.net">UnknownHostException</a></code></dd>
<dd><code>com.mongodb.MongoException</code></dd></dl>
</li>
</ul>
<a name="MongoSessionIdManager(org.eclipse.jetty.server.Server, com.mongodb.DBCollection)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>MongoSessionIdManager</h4>
<pre>public&nbsp;MongoSessionIdManager(<a href="../../../../../org/eclipse/jetty/server/Server.html" title="class in org.eclipse.jetty.server">Server</a>&nbsp;server,
com.mongodb.DBCollection&nbsp;sessions)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="scavenge()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>scavenge</h4>
<pre>protected&nbsp;void&nbsp;scavenge()</pre>
<div class="block">Scavenge is a process that periodically checks the tracked session
ids of this given instance of the session id manager to see if they
are past the point of expiration.</div>
</li>
</ul>
<a name="scavengeFully()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>scavengeFully</h4>
<pre>protected&nbsp;void&nbsp;scavengeFully()</pre>
<div class="block">ScavengeFully will expire all sessions. In most circumstances
you should never need to call this method.
<b>USE WITH CAUTION</b></div>
</li>
</ul>
<a name="purge()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>purge</h4>
<pre>protected&nbsp;void&nbsp;purge()</pre>
<div class="block">Purge is a process that cleans the mongodb cluster of old sessions that are no
longer valid.
There are two checks being done here:
- if the accessed time is older than the current time minus the purge invalid age
and it is no longer valid then remove that session
- if the accessed time is older then the current time minus the purge valid age
then we consider this a lost record and remove it
NOTE: if your system supports long lived sessions then the purge valid age should be
set to zero so the check is skipped.
The second check was added to catch sessions that were being managed on machines
that might have crashed without marking their sessions as 'valid=false'</div>
</li>
</ul>
<a name="purgeFully()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>purgeFully</h4>
<pre>protected&nbsp;void&nbsp;purgeFully()</pre>
<div class="block">Purge is a process that cleans the mongodb cluster of old sessions that are no
longer valid.</div>
</li>
</ul>
<a name="getSessions()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSessions</h4>
<pre>public&nbsp;com.mongodb.DBCollection&nbsp;getSessions()</pre>
</li>
</ul>
<a name="isPurgeEnabled()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPurgeEnabled</h4>
<pre>public&nbsp;boolean&nbsp;isPurgeEnabled()</pre>
</li>
</ul>
<a name="setPurge(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPurge</h4>
<pre>public&nbsp;void&nbsp;setPurge(boolean&nbsp;purge)</pre>
</li>
</ul>
<a name="setScavengePeriod(long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setScavengePeriod</h4>
<pre>public&nbsp;void&nbsp;setScavengePeriod(long&nbsp;scavengePeriod)</pre>
<div class="block">The period in seconds between scavenge checks.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>scavengePeriod</code> - </dd></dl>
</li>
</ul>
<a name="setPurgeDelay(long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPurgeDelay</h4>
<pre>public&nbsp;void&nbsp;setPurgeDelay(long&nbsp;purgeDelay)</pre>
</li>
</ul>
<a name="getPurgeInvalidAge()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPurgeInvalidAge</h4>
<pre>public&nbsp;long&nbsp;getPurgeInvalidAge()</pre>
</li>
</ul>
<a name="setPurgeInvalidAge(long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPurgeInvalidAge</h4>
<pre>public&nbsp;void&nbsp;setPurgeInvalidAge(long&nbsp;purgeValidAge)</pre>
<div class="block">sets how old a session is to be persisted past the point it is
no longer valid</div>
</li>
</ul>
<a name="getPurgeValidAge()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPurgeValidAge</h4>
<pre>public&nbsp;long&nbsp;getPurgeValidAge()</pre>
</li>
</ul>
<a name="setPurgeValidAge(long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPurgeValidAge</h4>
<pre>public&nbsp;void&nbsp;setPurgeValidAge(long&nbsp;purgeValidAge)</pre>
<div class="block">sets how old a session is to be persist past the point it is
considered no longer viable and should be removed
NOTE: set this value to 0 to disable purging of valid sessions</div>
</li>
</ul>
<a name="doStart()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doStart</h4>
<pre>protected&nbsp;void&nbsp;doStart()
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#doStart()">doStart</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html" title="class in org.eclipse.jetty.server.session">AbstractSessionIdManager</a></code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd></dl>
</li>
</ul>
<a name="doStop()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doStop</h4>
<pre>protected&nbsp;void&nbsp;doStop()
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#doStop()">doStop</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html" title="class in org.eclipse.jetty.server.session">AbstractSessionIdManager</a></code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd></dl>
</li>
</ul>
<a name="idInUse(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>idInUse</h4>
<pre>public&nbsp;boolean&nbsp;idInUse(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sessionId)</pre>
<div class="block">Searches database to find if the session id known to mongo, and is it valid</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sessionId</code> - The session ID without any cluster node extension</dd>
<dt><span class="strong">Returns:</span></dt><dd>True if the session ID is in use by at least one context.</dd></dl>
</li>
</ul>
<a name="addSession(javax.servlet.http.HttpSession)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addSession</h4>
<pre>public&nbsp;void&nbsp;addSession(<a href="http://docs.oracle.com/javaee/7/api/javax/servlet/http/HttpSession.html?is-external=true" title="class or interface in javax.servlet.http">HttpSession</a>&nbsp;session)</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../../org/eclipse/jetty/server/SessionIdManager.html#addSession(javax.servlet.http.HttpSession)">SessionIdManager</a></code></strong></div>
<div class="block">Add a session to the list of known sessions for a given ID.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>session</code> - The session</dd></dl>
</li>
</ul>
<a name="removeSession(javax.servlet.http.HttpSession)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeSession</h4>
<pre>public&nbsp;void&nbsp;removeSession(<a href="http://docs.oracle.com/javaee/7/api/javax/servlet/http/HttpSession.html?is-external=true" title="class or interface in javax.servlet.http">HttpSession</a>&nbsp;session)</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../../org/eclipse/jetty/server/SessionIdManager.html#removeSession(javax.servlet.http.HttpSession)">SessionIdManager</a></code></strong></div>
<div class="block">Remove session from the list of known sessions for a given ID.</div>
</li>
</ul>
<a name="invalidateAll(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invalidateAll</h4>
<pre>public&nbsp;void&nbsp;invalidateAll(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sessionId)</pre>
<div class="block">Remove the session id from the list of in-use sessions.
Inform all other known contexts that sessions with the same id should be
invalidated.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sessionId</code> - The session ID without any cluster node extension</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../org/eclipse/jetty/server/SessionIdManager.html#invalidateAll(java.lang.String)"><code>SessionIdManager.invalidateAll(java.lang.String)</code></a></dd></dl>
</li>
</ul>
<a name="expireAll(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>expireAll</h4>
<pre>public&nbsp;void&nbsp;expireAll(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sessionId)</pre>
<div class="block">Expire this session for all contexts that are sharing the session
id.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sessionId</code> - </dd></dl>
</li>
</ul>
<a name="renewSessionId(java.lang.String, java.lang.String, javax.servlet.http.HttpServletRequest)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>renewSessionId</h4>
<pre>public&nbsp;void&nbsp;renewSessionId(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;oldClusterId,
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;oldNodeId,
<a href="http://docs.oracle.com/javaee/7/api/javax/servlet/http/HttpServletRequest.html?is-external=true" title="class or interface in javax.servlet.http">HttpServletRequest</a>&nbsp;request)</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../../../org/eclipse/jetty/server/SessionIdManager.html#renewSessionId(java.lang.String,%20java.lang.String,%20javax.servlet.http.HttpServletRequest)">SessionIdManager</a></code></strong></div>
<div class="block">Change the existing session id.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/eclipse/jetty/server/SessionIdManager.html#renewSessionId(java.lang.String,%20java.lang.String,%20javax.servlet.http.HttpServletRequest)">renewSessionId</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/eclipse/jetty/server/SessionIdManager.html" title="interface in org.eclipse.jetty.server">SessionIdManager</a></code></dd>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html#renewSessionId(java.lang.String,%20java.lang.String,%20javax.servlet.http.HttpServletRequest)">renewSessionId</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/eclipse/jetty/server/session/AbstractSessionIdManager.html" title="class in org.eclipse.jetty.server.session">AbstractSessionIdManager</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/MongoSessionIdManager.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-1149868-7']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li><a href="../../../../../org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.Purger.html" title="class in org.eclipse.jetty.nosql.mongodb"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/jetty/nosql/mongodb/MongoSessionIdManager.html" target="_top">Frames</a></li>
<li><a href="MongoSessionIdManager.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 1995-2017 <a href="http://webtide.com">Webtide</a>. All Rights Reserved.</small></p>
</body>
</html>