| <!DOCTYPE HTML> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc (11.0.9.1) on Tue Jan 19 11:49:19 CST 2021 --> |
| <title>FileSessionDataStore (Jetty :: Project 9.4.36.v20210114 API)</title> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <meta name="dc.created" content="2021-01-19"> |
| <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style"> |
| <script type="text/javascript" src="../../../../../script.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script> |
| <!--[if IE]> |
| <script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script> |
| <![endif]--> |
| <script type="text/javascript" src="../../../../../jquery/jquery-3.5.1.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="FileSessionDataStore (Jetty :: Project 9.4.36.v20210114 API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10}; |
| var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| var pathtoroot = "../../../../../"; |
| var useModuleDirectories = false; |
| loadScripts(document, 'script');</script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <header role="banner"> |
| <nav role="navigation"> |
| <div class="fixedNav"> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a id="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a id="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/FileSessionDataStore.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> |
| <div class="subNav"> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../../../allclasses.html">All Classes</a></li> |
| </ul> |
| <ul class="navListSearch"> |
| <li><label for="search">SEARCH:</label> |
| <input type="text" id="search" value="search" disabled="disabled"> |
| <input type="reset" id="reset" value="reset" disabled="disabled"> |
| </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> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li><a href="#field.detail">Field</a> | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a id="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| </div> |
| <div class="navPadding"> </div> |
| <script type="text/javascript"><!-- |
| $('.navPadding').css('padding-top', $('.fixedNav').css("height")); |
| //--> |
| </script> |
| </nav> |
| </header> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <main role="main"> |
| <div class="header"> |
| <div class="subTitle"><span class="packageLabelInType">Package</span> <a href="package-summary.html">org.eclipse.jetty.server.session</a></div> |
| <h2 title="Class FileSessionDataStore" class="title">Class FileSessionDataStore</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li>java.lang.Object</li> |
| <li> |
| <ul class="inheritance"> |
| <li><a href="../../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="../../util/component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">org.eclipse.jetty.util.component.ContainerLifeCycle</a></li> |
| <li> |
| <ul class="inheritance"> |
| <li><a href="AbstractSessionDataStore.html" title="class in org.eclipse.jetty.server.session">org.eclipse.jetty.server.session.AbstractSessionDataStore</a></li> |
| <li> |
| <ul class="inheritance"> |
| <li>org.eclipse.jetty.server.session.FileSessionDataStore</li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <dl> |
| <dt>All Implemented Interfaces:</dt> |
| <dd><code><a href="SessionDataMap.html" title="interface in org.eclipse.jetty.server.session">SessionDataMap</a></code>, <code><a href="SessionDataStore.html" title="interface in org.eclipse.jetty.server.session">SessionDataStore</a></code>, <code><a href="../../util/component/Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></code>, <code><a href="../../util/component/Destroyable.html" title="interface in org.eclipse.jetty.util.component">Destroyable</a></code>, <code><a href="../../util/component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></code>, <code><a href="../../util/component/Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></code>, <code><a href="../../util/component/LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></code></dd> |
| </dl> |
| <hr> |
| <pre><a href="../../util/annotation/ManagedObject.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedObject</a> |
| public class <span class="typeNameLabel">FileSessionDataStore</span> |
| extends <a href="AbstractSessionDataStore.html" title="class in org.eclipse.jetty.server.session">AbstractSessionDataStore</a></pre> |
| <div class="block">FileSessionDataStore |
| |
| A file-based store of session data.</div> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ======== NESTED CLASS SUMMARY ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="nested.class.summary"> |
| <!-- --> |
| </a> |
| <h3>Nested Class Summary</h3> |
| <ul class="blockList"> |
| <li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle"> |
| <!-- --> |
| </a> |
| <h3>Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.<a href="../../util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3> |
| <code><a href="../../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 id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.Container"> |
| <!-- --> |
| </a> |
| <h3>Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.<a href="../../util/component/Container.html" title="interface in org.eclipse.jetty.util.component">Container</a></h3> |
| <code><a href="../../util/component/Container.InheritedListener.html" title="interface in org.eclipse.jetty.util.component">Container.InheritedListener</a>, <a href="../../util/component/Container.Listener.html" title="interface in org.eclipse.jetty.util.component">Container.Listener</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.Dumpable"> |
| <!-- --> |
| </a> |
| <h3>Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.<a href="../../util/component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3> |
| <code><a href="../../util/component/Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="nested.classes.inherited.from.class.org.eclipse.jetty.util.component.LifeCycle"> |
| <!-- --> |
| </a> |
| <h3>Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.<a href="../../util/component/LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></h3> |
| <code><a href="../../util/component/LifeCycle.Listener.html" title="interface in org.eclipse.jetty.util.component">LifeCycle.Listener</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="field.summary"> |
| <!-- --> |
| </a> |
| <h3>Field Summary</h3> |
| <table class="memberSummary"> |
| <caption><span>Fields</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colSecond" scope="col">Field</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>protected java.lang.String</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#_contextString">_contextString</a></span></code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>protected boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#_deleteUnrestorableFiles">_deleteUnrestorableFiles</a></span></code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>protected long</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#_lastSweepTime">_lastSweepTime</a></span></code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>protected java.util.Map<java.lang.String,​java.lang.String></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#_sessionFileMap">_sessionFileMap</a></span></code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>protected java.io.File</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#_storeDir">_storeDir</a></span></code></th> |
| <td class="colLast"> </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.server.session.AbstractSessionDataStore"> |
| <!-- --> |
| </a> |
| <h3>Fields inherited from class org.eclipse.jetty.server.session.<a href="AbstractSessionDataStore.html" title="class in org.eclipse.jetty.server.session">AbstractSessionDataStore</a></h3> |
| <code><a href="AbstractSessionDataStore.html#_context">_context</a>, <a href="AbstractSessionDataStore.html#_gracePeriodSec">_gracePeriodSec</a>, <a href="AbstractSessionDataStore.html#_lastExpiryCheckTime">_lastExpiryCheckTime</a>, <a href="AbstractSessionDataStore.html#_savePeriodSec">_savePeriodSec</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle"> |
| <!-- --> |
| </a> |
| <h3>Fields inherited from class org.eclipse.jetty.util.component.<a href="../../util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3> |
| <code><a href="../../util/component/AbstractLifeCycle.html#FAILED">FAILED</a>, <a href="../../util/component/AbstractLifeCycle.html#RUNNING">RUNNING</a>, <a href="../../util/component/AbstractLifeCycle.html#STARTED">STARTED</a>, <a href="../../util/component/AbstractLifeCycle.html#STARTING">STARTING</a>, <a href="../../util/component/AbstractLifeCycle.html#STOPPED">STOPPED</a>, <a href="../../util/component/AbstractLifeCycle.html#STOPPING">STOPPING</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="fields.inherited.from.class.org.eclipse.jetty.util.component.Dumpable"> |
| <!-- --> |
| </a> |
| <h3>Fields inherited from interface org.eclipse.jetty.util.component.<a href="../../util/component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3> |
| <code><a href="../../util/component/Dumpable.html#KEY">KEY</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="constructor.summary"> |
| <!-- --> |
| </a> |
| <h3>Constructor Summary</h3> |
| <table class="memberSummary"> |
| <caption><span>Constructors</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Constructor</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <tr class="altColor"> |
| <th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">FileSessionDataStore</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| </section> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colSecond" scope="col">Method</th> |
| <th class="colLast" scope="col">Description</th> |
| </tr> |
| <tr id="i0" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#delete(java.lang.String)">delete</a></span>​(java.lang.String id)</code></th> |
| <td class="colLast"> |
| <div class="block">Delete a session</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deleteFile(java.lang.String)">deleteFile</a></span>​(java.lang.String filename)</code></th> |
| <td class="colLast"> |
| <div class="block">Delete the file associated with a session</div> |
| </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code>java.util.Set<java.lang.String></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doGetExpired(java.util.Set)">doGetExpired</a></span>​(java.util.Set<java.lang.String> candidates)</code></th> |
| <td class="colLast"> |
| <div class="block">Check to see which sessions have expired.</div> |
| </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code><a href="SessionData.html" title="class in org.eclipse.jetty.server.session">SessionData</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doLoad(java.lang.String)">doLoad</a></span>​(java.lang.String id)</code></th> |
| <td class="colLast"> |
| <div class="block">Load the session from persistent store.</div> |
| </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doStart()">doStart</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Starts the managed lifecycle beans in the order they were added.</div> |
| </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doStop()">doStop</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Stops the managed lifecycle beans in the reverse order they were added.</div> |
| </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doStore(java.lang.String,org.eclipse.jetty.server.session.SessionData,long)">doStore</a></span>​(java.lang.String id, |
| <a href="SessionData.html" title="class in org.eclipse.jetty.server.session">SessionData</a> data, |
| long lastSaveTime)</code></th> |
| <td class="colLast"> |
| <div class="block">Store the session data persistently.</div> |
| </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#exists(java.lang.String)">exists</a></span>​(java.lang.String id)</code></th> |
| <td class="colLast"> |
| <div class="block">Test if data exists for a given session id.</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code>protected java.lang.String</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getContextFromFilename(java.lang.String)">getContextFromFilename</a></span>​(java.lang.String filename)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code>protected long</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getExpiryFromFilename(java.lang.String)">getExpiryFromFilename</a></span>​(java.lang.String filename)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code>protected java.lang.String</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getIdFromFilename(java.lang.String)">getIdFromFilename</a></span>​(java.lang.String filename)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code>protected java.lang.String</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getIdWithContext(java.lang.String)">getIdWithContext</a></span>​(java.lang.String id)</code></th> |
| <td class="colLast"> |
| <div class="block">Get the session id with its context.</div> |
| </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code>protected java.lang.String</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getIdWithContextAndExpiry(org.eclipse.jetty.server.session.SessionData)">getIdWithContextAndExpiry</a></span>​(<a href="SessionData.html" title="class in org.eclipse.jetty.server.session">SessionData</a> data)</code></th> |
| <td class="colLast"> |
| <div class="block">Get the session id with its context and its expiry time</div> |
| </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code>protected java.lang.String</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getIdWithContextFromFilename(java.lang.String)">getIdWithContextFromFilename</a></span>​(java.lang.String filename)</code></th> |
| <td class="colLast"> |
| <div class="block">Extract the session id and context from the filename</div> |
| </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code>java.io.File</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getStoreDir()">getStoreDir</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i15" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#initialize(org.eclipse.jetty.server.session.SessionContext)">initialize</a></span>​(<a href="SessionContext.html" title="class in org.eclipse.jetty.server.session">SessionContext</a> context)</code></th> |
| <td class="colLast"> |
| <div class="block">Initialize this data map for the |
| given context.</div> |
| </td> |
| </tr> |
| <tr id="i16" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#initializeStore()">initializeStore</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Read the names of the existing session files and build a map of |
| fully qualified session ids (ie with context) to filename.</div> |
| </td> |
| </tr> |
| <tr id="i17" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isDeleteUnrestorableFiles()">isDeleteUnrestorableFiles</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i18" class="altColor"> |
| <td class="colFirst"><code>protected boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isOurContextSessionFilename(java.lang.String)">isOurContextSessionFilename</a></span>​(java.lang.String filename)</code></th> |
| <td class="colLast"> |
| <div class="block">Check if the filename matches our session pattern |
| and is a session for our context.</div> |
| </td> |
| </tr> |
| <tr id="i19" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPassivating()">isPassivating</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">True if this type of datastore will passivate session objects</div> |
| </td> |
| </tr> |
| <tr id="i20" class="altColor"> |
| <td class="colFirst"><code>protected boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isSessionFilename(java.lang.String)">isSessionFilename</a></span>​(java.lang.String filename)</code></th> |
| <td class="colLast"> |
| <div class="block">Check if the filename is a session filename.</div> |
| </td> |
| </tr> |
| <tr id="i21" class="rowColor"> |
| <td class="colFirst"><code>protected <a href="SessionData.html" title="class in org.eclipse.jetty.server.session">SessionData</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#load(java.io.InputStream,java.lang.String)">load</a></span>​(java.io.InputStream is, |
| java.lang.String expectedId)</code></th> |
| <td class="colLast"> |
| <div class="block">Load the session data from a file.</div> |
| </td> |
| </tr> |
| <tr id="i22" class="altColor"> |
| <td class="colFirst"><code>protected void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#save(java.io.OutputStream,java.lang.String,org.eclipse.jetty.server.session.SessionData)">save</a></span>​(java.io.OutputStream os, |
| java.lang.String id, |
| <a href="SessionData.html" title="class in org.eclipse.jetty.server.session">SessionData</a> data)</code></th> |
| <td class="colLast"> |
| <div class="block">Save the session data.</div> |
| </td> |
| </tr> |
| <tr id="i23" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDeleteUnrestorableFiles(boolean)">setDeleteUnrestorableFiles</a></span>​(boolean deleteUnrestorableFiles)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i24" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setStoreDir(java.io.File)">setStoreDir</a></span>​(java.io.File storeDir)</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i25" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sweepDisk()">sweepDisk</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Check all session files that do not belong to this context and |
| remove any that expired long ago (ie at least 5 gracePeriods ago).</div> |
| </td> |
| </tr> |
| <tr id="i26" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sweepFile(long,java.nio.file.Path)">sweepFile</a></span>​(long now, |
| java.nio.file.Path p)</code></th> |
| <td class="colLast"> |
| <div class="block">Check to see if the expiry on the file is very old, and |
| delete the file if so.</div> |
| </td> |
| </tr> |
| <tr id="i27" class="rowColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.server.session.AbstractSessionDataStore"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class org.eclipse.jetty.server.session.<a href="AbstractSessionDataStore.html" title="class in org.eclipse.jetty.server.session">AbstractSessionDataStore</a></h3> |
| <code><a href="AbstractSessionDataStore.html#checkStarted()">checkStarted</a>, <a href="AbstractSessionDataStore.html#getExpired(java.util.Set)">getExpired</a>, <a href="AbstractSessionDataStore.html#getGracePeriodSec()">getGracePeriodSec</a>, <a href="AbstractSessionDataStore.html#getSavePeriodSec()">getSavePeriodSec</a>, <a href="AbstractSessionDataStore.html#load(java.lang.String)">load</a>, <a href="AbstractSessionDataStore.html#newSessionData(java.lang.String,long,long,long,long)">newSessionData</a>, <a href="AbstractSessionDataStore.html#setGracePeriodSec(int)">setGracePeriodSec</a>, <a href="AbstractSessionDataStore.html#setSavePeriodSec(int)">setSavePeriodSec</a>, <a href="AbstractSessionDataStore.html#store(java.lang.String,org.eclipse.jetty.server.session.SessionData)">store</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.ContainerLifeCycle"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class org.eclipse.jetty.util.component.<a href="../../util/component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">ContainerLifeCycle</a></h3> |
| <code><a href="../../util/component/ContainerLifeCycle.html#addBean(java.lang.Object)">addBean</a>, <a href="../../util/component/ContainerLifeCycle.html#addBean(java.lang.Object,boolean)">addBean</a>, <a href="../../util/component/ContainerLifeCycle.html#addEventListener(org.eclipse.jetty.util.component.Container.Listener)">addEventListener</a>, <a href="../../util/component/ContainerLifeCycle.html#addManaged(org.eclipse.jetty.util.component.LifeCycle)">addManaged</a>, <a href="../../util/component/ContainerLifeCycle.html#contains(java.lang.Object)">contains</a>, <a href="../../util/component/ContainerLifeCycle.html#destroy()">destroy</a>, <a href="../../util/component/ContainerLifeCycle.html#dump()">dump</a>, <a href="../../util/component/ContainerLifeCycle.html#dump(java.lang.Appendable)">dump</a>, <a href="../../util/component/ContainerLifeCycle.html#dump(java.lang.Appendable,java.lang.String)">dump</a>, <a href="../../util/component/ContainerLifeCycle.html#dump(java.lang.Appendable,java.lang.String,java.util.Collection...)">dump</a>, <a href="../../util/component/ContainerLifeCycle.html#dump(org.eclipse.jetty.util.component.Dumpable)">dump</a>, <a href="../../util/component/ContainerLifeCycle.html#dumpBeans(java.lang.Appendable,java.lang.String,java.util.Collection...)">dumpBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#dumpObject(java.lang.Appendable,java.lang.Object)">dumpObject</a>, <a href="../../util/component/ContainerLifeCycle.html#dumpObjects(java.lang.Appendable,java.lang.String,java.lang.Object...)">dumpObjects</a>, <a href="../../util/component/ContainerLifeCycle.html#dumpStdErr()">dumpStdErr</a>, <a href="../../util/component/ContainerLifeCycle.html#dumpThis(java.lang.Appendable)">dumpThis</a>, <a href="../../util/component/ContainerLifeCycle.html#getBean(java.lang.Class)">getBean</a>, <a href="../../util/component/ContainerLifeCycle.html#getBeans()">getBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#getBeans(java.lang.Class)">getBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#getContainedBeans(java.lang.Class)">getContainedBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#getContainedBeans(java.lang.Class,java.util.Collection)">getContainedBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#isAuto(java.lang.Object)">isAuto</a>, <a href="../../util/component/ContainerLifeCycle.html#isManaged(java.lang.Object)">isManaged</a>, <a href="../../util/component/ContainerLifeCycle.html#isUnmanaged(java.lang.Object)">isUnmanaged</a>, <a href="../../util/component/ContainerLifeCycle.html#manage(java.lang.Object)">manage</a>, <a href="../../util/component/ContainerLifeCycle.html#removeBean(java.lang.Object)">removeBean</a>, <a href="../../util/component/ContainerLifeCycle.html#removeBeans()">removeBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#removeEventListener(org.eclipse.jetty.util.component.Container.Listener)">removeEventListener</a>, <a href="../../util/component/ContainerLifeCycle.html#setBeans(java.util.Collection)">setBeans</a>, <a href="../../util/component/ContainerLifeCycle.html#setStopTimeout(long)">setStopTimeout</a>, <a href="../../util/component/ContainerLifeCycle.html#start(org.eclipse.jetty.util.component.LifeCycle)">start</a>, <a href="../../util/component/ContainerLifeCycle.html#stop(org.eclipse.jetty.util.component.LifeCycle)">stop</a>, <a href="../../util/component/ContainerLifeCycle.html#unmanage(java.lang.Object)">unmanage</a>, <a href="../../util/component/ContainerLifeCycle.html#updateBean(java.lang.Object,java.lang.Object)">updateBean</a>, <a href="../../util/component/ContainerLifeCycle.html#updateBean(java.lang.Object,java.lang.Object,boolean)">updateBean</a>, <a href="../../util/component/ContainerLifeCycle.html#updateBeans(java.lang.Object%5B%5D,java.lang.Object%5B%5D)">updateBeans</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.AbstractLifeCycle"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class org.eclipse.jetty.util.component.<a href="../../util/component/AbstractLifeCycle.html" title="class in org.eclipse.jetty.util.component">AbstractLifeCycle</a></h3> |
| <code><a href="../../util/component/AbstractLifeCycle.html#addLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">addLifeCycleListener</a>, <a href="../../util/component/AbstractLifeCycle.html#getState()">getState</a>, <a href="../../util/component/AbstractLifeCycle.html#getState(org.eclipse.jetty.util.component.LifeCycle)">getState</a>, <a href="../../util/component/AbstractLifeCycle.html#getStopTimeout()">getStopTimeout</a>, <a href="../../util/component/AbstractLifeCycle.html#isFailed()">isFailed</a>, <a href="../../util/component/AbstractLifeCycle.html#isRunning()">isRunning</a>, <a href="../../util/component/AbstractLifeCycle.html#isStarted()">isStarted</a>, <a href="../../util/component/AbstractLifeCycle.html#isStarting()">isStarting</a>, <a href="../../util/component/AbstractLifeCycle.html#isStopped()">isStopped</a>, <a href="../../util/component/AbstractLifeCycle.html#isStopping()">isStopping</a>, <a href="../../util/component/AbstractLifeCycle.html#removeLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">removeLifeCycleListener</a>, <a href="../../util/component/AbstractLifeCycle.html#start()">start</a>, <a href="../../util/component/AbstractLifeCycle.html#stop()">stop</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class java.lang.Object</h3> |
| <code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.Dumpable"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from interface org.eclipse.jetty.util.component.<a href="../../util/component/Dumpable.html" title="interface in org.eclipse.jetty.util.component">Dumpable</a></h3> |
| <code><a href="../../util/component/Dumpable.html#dumpSelf()">dumpSelf</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.Dumpable.DumpableContainer"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from interface org.eclipse.jetty.util.component.<a href="../../util/component/Dumpable.DumpableContainer.html" title="interface in org.eclipse.jetty.util.component">Dumpable.DumpableContainer</a></h3> |
| <code><a href="../../util/component/Dumpable.DumpableContainer.html#isDumpable(java.lang.Object)">isDumpable</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.util.component.LifeCycle"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from interface org.eclipse.jetty.util.component.<a href="../../util/component/LifeCycle.html" title="interface in org.eclipse.jetty.util.component">LifeCycle</a></h3> |
| <code><a href="../../util/component/LifeCycle.html#addLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">addLifeCycleListener</a>, <a href="../../util/component/LifeCycle.html#isFailed()">isFailed</a>, <a href="../../util/component/LifeCycle.html#isRunning()">isRunning</a>, <a href="../../util/component/LifeCycle.html#isStarted()">isStarted</a>, <a href="../../util/component/LifeCycle.html#isStarting()">isStarting</a>, <a href="../../util/component/LifeCycle.html#isStopped()">isStopped</a>, <a href="../../util/component/LifeCycle.html#isStopping()">isStopping</a>, <a href="../../util/component/LifeCycle.html#removeLifeCycleListener(org.eclipse.jetty.util.component.LifeCycle.Listener)">removeLifeCycleListener</a>, <a href="../../util/component/LifeCycle.html#start()">start</a>, <a href="../../util/component/LifeCycle.html#stop()">stop</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ============ FIELD DETAIL =========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="field.detail"> |
| <!-- --> |
| </a> |
| <h3>Field Detail</h3> |
| <a id="_storeDir"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>_storeDir</h4> |
| <pre>protected java.io.File _storeDir</pre> |
| </li> |
| </ul> |
| <a id="_deleteUnrestorableFiles"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>_deleteUnrestorableFiles</h4> |
| <pre>protected boolean _deleteUnrestorableFiles</pre> |
| </li> |
| </ul> |
| <a id="_sessionFileMap"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>_sessionFileMap</h4> |
| <pre>protected java.util.Map<java.lang.String,​java.lang.String> _sessionFileMap</pre> |
| </li> |
| </ul> |
| <a id="_contextString"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>_contextString</h4> |
| <pre>protected java.lang.String _contextString</pre> |
| </li> |
| </ul> |
| <a id="_lastSweepTime"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>_lastSweepTime</h4> |
| <pre>protected long _lastSweepTime</pre> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="constructor.detail"> |
| <!-- --> |
| </a> |
| <h3>Constructor Detail</h3> |
| <a id="<init>()"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>FileSessionDataStore</h4> |
| <pre>public FileSessionDataStore()</pre> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| <!-- ============ METHOD DETAIL ========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a id="initialize(org.eclipse.jetty.server.session.SessionContext)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>initialize</h4> |
| <pre class="methodSignature">public void initialize​(<a href="SessionContext.html" title="class in org.eclipse.jetty.server.session">SessionContext</a> context) |
| throws java.lang.Exception</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="SessionDataMap.html#initialize(org.eclipse.jetty.server.session.SessionContext)">SessionDataMap</a></code></span></div> |
| <div class="block">Initialize this data map for the |
| given context. A SessionDataMap can only |
| be used by one context(/session manager).</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="SessionDataMap.html#initialize(org.eclipse.jetty.server.session.SessionContext)">initialize</a></code> in interface <code><a href="SessionDataMap.html" title="interface in org.eclipse.jetty.server.session">SessionDataMap</a></code></dd> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="AbstractSessionDataStore.html#initialize(org.eclipse.jetty.server.session.SessionContext)">initialize</a></code> in class <code><a href="AbstractSessionDataStore.html" title="class in org.eclipse.jetty.server.session">AbstractSessionDataStore</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>context</code> - context associated</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code> - if unable to initialize the</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="doStart()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>doStart</h4> |
| <pre class="methodSignature">protected void doStart() |
| throws java.lang.Exception</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../util/component/ContainerLifeCycle.html#doStart()">ContainerLifeCycle</a></code></span></div> |
| <div class="block">Starts the managed lifecycle beans in the order they were added.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="AbstractSessionDataStore.html#doStart()">doStart</a></code> in class <code><a href="AbstractSessionDataStore.html" title="class in org.eclipse.jetty.server.session">AbstractSessionDataStore</a></code></dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="doStop()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>doStop</h4> |
| <pre class="methodSignature">protected void doStop() |
| throws java.lang.Exception</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="../../util/component/ContainerLifeCycle.html#doStop()">ContainerLifeCycle</a></code></span></div> |
| <div class="block">Stops the managed lifecycle beans in the reverse order they were added.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="../../util/component/ContainerLifeCycle.html#doStop()">doStop</a></code> in class <code><a href="../../util/component/ContainerLifeCycle.html" title="class in org.eclipse.jetty.util.component">ContainerLifeCycle</a></code></dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="getStoreDir()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getStoreDir</h4> |
| <pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>(<a href="../../util/annotation/ManagedAttribute.html#value()">value</a>="dir where sessions are stored", |
| <a href="../../util/annotation/ManagedAttribute.html#readonly()">readonly</a>=true) |
| public java.io.File getStoreDir()</pre> |
| </li> |
| </ul> |
| <a id="setStoreDir(java.io.File)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setStoreDir</h4> |
| <pre class="methodSignature">public void setStoreDir​(java.io.File storeDir)</pre> |
| </li> |
| </ul> |
| <a id="isDeleteUnrestorableFiles()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isDeleteUnrestorableFiles</h4> |
| <pre class="methodSignature">public boolean isDeleteUnrestorableFiles()</pre> |
| </li> |
| </ul> |
| <a id="setDeleteUnrestorableFiles(boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setDeleteUnrestorableFiles</h4> |
| <pre class="methodSignature">public void setDeleteUnrestorableFiles​(boolean deleteUnrestorableFiles)</pre> |
| </li> |
| </ul> |
| <a id="delete(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>delete</h4> |
| <pre class="methodSignature">public boolean delete​(java.lang.String id) |
| throws java.lang.Exception</pre> |
| <div class="block">Delete a session</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>id</code> - session id</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if the session was deleted</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code> - if unable to delete session data</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="deleteFile(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>deleteFile</h4> |
| <pre class="methodSignature">public boolean deleteFile​(java.lang.String filename) |
| throws java.lang.Exception</pre> |
| <div class="block">Delete the file associated with a session</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>filename</code> - name of the file containing the session's information</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if file was deleted, false otherwise</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code> - indicating delete failure</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="doGetExpired(java.util.Set)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>doGetExpired</h4> |
| <pre class="methodSignature">public java.util.Set<java.lang.String> doGetExpired​(java.util.Set<java.lang.String> candidates)</pre> |
| <div class="block">Check to see which sessions have expired.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="AbstractSessionDataStore.html#doGetExpired(java.util.Set)">doGetExpired</a></code> in class <code><a href="AbstractSessionDataStore.html" title="class in org.eclipse.jetty.server.session">AbstractSessionDataStore</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>candidates</code> - the set of session ids that the SessionCache believes |
| have expired</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the complete set of sessions that have expired, including those |
| that are not currently loaded into the SessionCache</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="sweepDisk()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>sweepDisk</h4> |
| <pre class="methodSignature">public void sweepDisk()</pre> |
| <div class="block">Check all session files that do not belong to this context and |
| remove any that expired long ago (ie at least 5 gracePeriods ago).</div> |
| </li> |
| </ul> |
| <a id="sweepFile(long,java.nio.file.Path)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>sweepFile</h4> |
| <pre class="methodSignature">public void sweepFile​(long now, |
| java.nio.file.Path p)</pre> |
| <div class="block">Check to see if the expiry on the file is very old, and |
| delete the file if so. "Old" means that it expired at least |
| 5 gracePeriods ago. The session can belong to any context.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>now</code> - the time now in msec</dd> |
| <dd><code>p</code> - the file to check</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="doLoad(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>doLoad</h4> |
| <pre class="methodSignature">public <a href="SessionData.html" title="class in org.eclipse.jetty.server.session">SessionData</a> doLoad​(java.lang.String id) |
| throws java.lang.Exception</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="AbstractSessionDataStore.html#doLoad(java.lang.String)">AbstractSessionDataStore</a></code></span></div> |
| <div class="block">Load the session from persistent store.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="AbstractSessionDataStore.html#doLoad(java.lang.String)">doLoad</a></code> in class <code><a href="AbstractSessionDataStore.html" title="class in org.eclipse.jetty.server.session">AbstractSessionDataStore</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>id</code> - the id of the session to load</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the re-inflated session</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code> - if unable to load the session</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="doStore(java.lang.String,org.eclipse.jetty.server.session.SessionData,long)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>doStore</h4> |
| <pre class="methodSignature">public void doStore​(java.lang.String id, |
| <a href="SessionData.html" title="class in org.eclipse.jetty.server.session">SessionData</a> data, |
| long lastSaveTime) |
| throws java.lang.Exception</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from class: <code><a href="AbstractSessionDataStore.html#doStore(java.lang.String,org.eclipse.jetty.server.session.SessionData,long)">AbstractSessionDataStore</a></code></span></div> |
| <div class="block">Store the session data persistently.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="AbstractSessionDataStore.html#doStore(java.lang.String,org.eclipse.jetty.server.session.SessionData,long)">doStore</a></code> in class <code><a href="AbstractSessionDataStore.html" title="class in org.eclipse.jetty.server.session">AbstractSessionDataStore</a></code></dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>id</code> - identity of session to store</dd> |
| <dd><code>data</code> - info of the session</dd> |
| <dd><code>lastSaveTime</code> - time of previous save or 0 if never saved</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code> - if unable to store data</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="initializeStore()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>initializeStore</h4> |
| <pre class="methodSignature">public void initializeStore() |
| throws java.lang.Exception</pre> |
| <div class="block">Read the names of the existing session files and build a map of |
| fully qualified session ids (ie with context) to filename. If there |
| is more than one file for the same session, only the most recently modified will |
| be kept and the rest deleted. At the same time, any files - for any context - |
| that expired a long time ago will be cleaned up.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code> - if storeDir doesn't exist, isn't readable/writeable |
| or contains 2 files with the same lastmodify time for the same session. Throws IOException |
| if the lastmodifytimes can't be read.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="isPassivating()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isPassivating</h4> |
| <pre class="methodSignature"><a href="../../util/annotation/ManagedAttribute.html" title="annotation in org.eclipse.jetty.util.annotation">@ManagedAttribute</a>(<a href="../../util/annotation/ManagedAttribute.html#value()">value</a>="are sessions serialized by this store", |
| <a href="../../util/annotation/ManagedAttribute.html#readonly()">readonly</a>=true) |
| public boolean isPassivating()</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="SessionDataStore.html#isPassivating()">SessionDataStore</a></code></span></div> |
| <div class="block">True if this type of datastore will passivate session objects</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if this store can passivate sessions, false otherwise</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="exists(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>exists</h4> |
| <pre class="methodSignature">public boolean exists​(java.lang.String id) |
| throws java.lang.Exception</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="SessionDataStore.html#exists(java.lang.String)">SessionDataStore</a></code></span></div> |
| <div class="block">Test if data exists for a given session id.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>id</code> - Identity of session whose existence should be checked</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if valid, non-expired session exists</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code> - if problem checking existence with persistence layer</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="save(java.io.OutputStream,java.lang.String,org.eclipse.jetty.server.session.SessionData)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>save</h4> |
| <pre class="methodSignature">protected void save​(java.io.OutputStream os, |
| java.lang.String id, |
| <a href="SessionData.html" title="class in org.eclipse.jetty.server.session">SessionData</a> data) |
| throws java.io.IOException</pre> |
| <div class="block">Save the session data.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>os</code> - the output stream to save to</dd> |
| <dd><code>id</code> - identity of the session</dd> |
| <dd><code>data</code> - the info of the session</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.io.IOException</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="getIdWithContext(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getIdWithContext</h4> |
| <pre class="methodSignature">protected java.lang.String getIdWithContext​(java.lang.String id)</pre> |
| <div class="block">Get the session id with its context.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>id</code> - identity of session</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the session id plus context</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="getIdWithContextAndExpiry(org.eclipse.jetty.server.session.SessionData)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getIdWithContextAndExpiry</h4> |
| <pre class="methodSignature">protected java.lang.String getIdWithContextAndExpiry​(<a href="SessionData.html" title="class in org.eclipse.jetty.server.session">SessionData</a> data)</pre> |
| <div class="block">Get the session id with its context and its expiry time</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the session id plus context and expiry</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="getIdFromFilename(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getIdFromFilename</h4> |
| <pre class="methodSignature">protected java.lang.String getIdFromFilename​(java.lang.String filename)</pre> |
| </li> |
| </ul> |
| <a id="getExpiryFromFilename(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getExpiryFromFilename</h4> |
| <pre class="methodSignature">protected long getExpiryFromFilename​(java.lang.String filename)</pre> |
| </li> |
| </ul> |
| <a id="getContextFromFilename(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getContextFromFilename</h4> |
| <pre class="methodSignature">protected java.lang.String getContextFromFilename​(java.lang.String filename)</pre> |
| </li> |
| </ul> |
| <a id="getIdWithContextFromFilename(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getIdWithContextFromFilename</h4> |
| <pre class="methodSignature">protected java.lang.String getIdWithContextFromFilename​(java.lang.String filename)</pre> |
| <div class="block">Extract the session id and context from the filename</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>filename</code> - the name of the file to use</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the session id plus context</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="isSessionFilename(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isSessionFilename</h4> |
| <pre class="methodSignature">protected boolean isSessionFilename​(java.lang.String filename)</pre> |
| <div class="block">Check if the filename is a session filename.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>filename</code> - the filename to check</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if the filename has the correct filename format</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="isOurContextSessionFilename(java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isOurContextSessionFilename</h4> |
| <pre class="methodSignature">protected boolean isOurContextSessionFilename​(java.lang.String filename)</pre> |
| <div class="block">Check if the filename matches our session pattern |
| and is a session for our context.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>filename</code> - the filename to check</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if the filename has the correct filename format and is for this context</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="load(java.io.InputStream,java.lang.String)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>load</h4> |
| <pre class="methodSignature">protected <a href="SessionData.html" title="class in org.eclipse.jetty.server.session">SessionData</a> load​(java.io.InputStream is, |
| java.lang.String expectedId) |
| throws java.lang.Exception</pre> |
| <div class="block">Load the session data from a file.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>is</code> - file input stream containing session data</dd> |
| <dd><code>expectedId</code> - the id we've been told to load</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the session data</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.Exception</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="toString()"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>toString</h4> |
| <pre class="methodSignature">public java.lang.String toString()</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="AbstractSessionDataStore.html#toString()">toString</a></code> in class <code><a href="AbstractSessionDataStore.html" title="class in org.eclipse.jetty.server.session">AbstractSessionDataStore</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </main> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <footer role="contentinfo"> |
| <nav role="navigation"> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a id="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a id="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../index.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="class-use/FileSessionDataStore.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> |
| <div class="subNav"> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../../../allclasses.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> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li><a href="#field.detail">Field</a> | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a id="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| </nav> |
| <p class="legalCopy"><small>Copyright © 1995–2021 <a href="https://webtide.com">Webtide</a>. All rights reserved.</small></p> |
| </footer> |
| </body> |
| </html> |