Plan/all/com/djrapitops/plan/storage/database/transactions/Transaction.html

566 lines
22 KiB
HTML

<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Transaction (Plan 5.2-SNAPSHOT API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<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="Transaction (Plan 5.2-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":6,"i9":10,"i10":10,"i11":10,"i12":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../../";
var useModuleDirectories = true;
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="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&nbsp;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:&nbsp;</li>
<li>Nested&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 id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</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>&nbsp;<a href="package-summary.html">com.djrapitops.plan.storage.database.transactions</a></div>
<h2 title="Class Transaction" class="title">Class Transaction</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>com.djrapitops.plan.storage.database.transactions.Transaction</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><code><a href="events/BanStatusTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.events">BanStatusTransaction</a></code>, <code><a href="events/CookieChangeTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.events">CookieChangeTransaction</a></code>, <code><a href="init/CreateIndexTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.init">CreateIndexTransaction</a></code>, <code><a href="events/GeoInfoStoreTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.events">GeoInfoStoreTransaction</a></code>, <code><a href="init/OperationCriticalTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.init">OperationCriticalTransaction</a></code>, <code><a href="events/PingStoreTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.events">PingStoreTransaction</a></code>, <code><a href="events/PlayerRegisterTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.events">PlayerRegisterTransaction</a></code>, <code><a href="commands/RegisterWebUserTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.commands">RegisterWebUserTransaction</a></code>, <code><a href="commands/RemoveWebUserTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.commands">RemoveWebUserTransaction</a></code>, <code><a href="events/SessionEndTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.events">SessionEndTransaction</a></code>, <code><a href="StoreConfigTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions">StoreConfigTransaction</a></code>, <code><a href="StoreServerInformationTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions">StoreServerInformationTransaction</a></code>, <code><a href="ThrowawayTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions">ThrowawayTransaction</a></code>, <code><a href="events/TPSStoreTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.events">TPSStoreTransaction</a></code>, <code><a href="events/WorldNameStoreTransaction.html" title="class in com.djrapitops.plan.storage.database.transactions.events">WorldNameStoreTransaction</a></code></dd>
</dl>
<hr>
<pre>public abstract class <span class="typeNameLabel">Transaction</span>
extends java.lang.Object</pre>
<div class="block">Represents a database transaction.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== 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">&nbsp;</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 int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#attempts">attempts</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../DBType.html" title="enum in com.djrapitops.plan.storage.database">DBType</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dbType">dbType</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#success">success</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</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">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colSecond" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E()">Transaction</a></span>()</code></th>
<td class="colLast">&nbsp;</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">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</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="#dbIsNotUnderHeavyLoad()">dbIsNotUnderHeavyLoad</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#execute(com.djrapitops.plan.storage.database.transactions.Executable)">execute</a></span>&#8203;(<a href="Executable.html" title="interface in com.djrapitops.plan.storage.database.transactions">Executable</a>&nbsp;executable)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#execute(java.lang.String)">execute</a></span>&#8203;(java.lang.String&nbsp;sql)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#executeOther(com.djrapitops.plan.storage.database.transactions.Transaction)">executeOther</a></span>&#8203;(<a href="Transaction.html" title="class in com.djrapitops.plan.storage.database.transactions">Transaction</a>&nbsp;transaction)</code></th>
<td class="colLast">&nbsp;</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="#executeSwallowingExceptions(java.lang.String...)">executeSwallowingExceptions</a></span>&#8203;(java.lang.String...&nbsp;statements)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#executeTransaction(com.djrapitops.plan.storage.database.SQLDB)">executeTransaction</a></span>&#8203;(<a href="../SQLDB.html" title="class in com.djrapitops.plan.storage.database">SQLDB</a>&nbsp;db)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected <a href="../Database.State.html" title="enum in com.djrapitops.plan.storage.database">Database.State</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDBState()">getDBState</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../identification/ServerUUID.html" title="class in com.djrapitops.plan.identification">ServerUUID</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getServerUUID()">getServerUUID</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#performOperations()">performOperations</a></span>()</code></th>
<td class="colLast">
<div class="block">Implement this method for transaction execution.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>protected &lt;T&gt;&nbsp;T</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#query(com.djrapitops.plan.storage.database.queries.Query)">query</a></span>&#8203;(<a href="../queries/Query.html" title="interface in com.djrapitops.plan.storage.database.queries">Query</a>&lt;T&gt;&nbsp;query)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#shouldBeExecuted()">shouldBeExecuted</a></span>()</code></th>
<td class="colLast">
<div class="block">Override this method for conditional execution.</div>
</td>
</tr>
<tr id="i11" 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">&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#wasSuccessful()">wasSuccessful</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</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="dbType">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dbType</h4>
<pre>protected&nbsp;<a href="../DBType.html" title="enum in com.djrapitops.plan.storage.database">DBType</a> dbType</pre>
</li>
</ul>
<a id="success">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>success</h4>
<pre>protected&nbsp;boolean success</pre>
</li>
</ul>
<a id="attempts">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>attempts</h4>
<pre>protected&nbsp;int attempts</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="&lt;init&gt;()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Transaction</h4>
<pre>protected&nbsp;Transaction()</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="executeTransaction(com.djrapitops.plan.storage.database.SQLDB)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>executeTransaction</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;executeTransaction&#8203;(<a href="../SQLDB.html" title="class in com.djrapitops.plan.storage.database">SQLDB</a>&nbsp;db)</pre>
</li>
</ul>
<a id="shouldBeExecuted()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldBeExecuted</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;shouldBeExecuted()</pre>
<div class="block">Override this method for conditional execution.
<p>
Please note that the transaction has not been initialized and class variables are not available for
queries. The condition should depend on other variables (Like the data that is to be stored) given to the transaction.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>false if the transaction should not execute.</dd>
</dl>
</li>
</ul>
<a id="performOperations()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>performOperations</h4>
<pre class="methodSignature">protected abstract&nbsp;void&nbsp;performOperations()</pre>
<div class="block">Implement this method for transaction execution.</div>
</li>
</ul>
<a id="query(com.djrapitops.plan.storage.database.queries.Query)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>query</h4>
<pre class="methodSignature">protected&nbsp;&lt;T&gt;&nbsp;T&nbsp;query&#8203;(<a href="../queries/Query.html" title="interface in com.djrapitops.plan.storage.database.queries">Query</a>&lt;T&gt;&nbsp;query)</pre>
</li>
</ul>
<a id="execute(com.djrapitops.plan.storage.database.transactions.Executable)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execute</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;execute&#8203;(<a href="Executable.html" title="interface in com.djrapitops.plan.storage.database.transactions">Executable</a>&nbsp;executable)</pre>
</li>
</ul>
<a id="execute(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execute</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;execute&#8203;(java.lang.String&nbsp;sql)</pre>
</li>
</ul>
<a id="executeSwallowingExceptions(java.lang.String...)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>executeSwallowingExceptions</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;executeSwallowingExceptions&#8203;(java.lang.String...&nbsp;statements)</pre>
</li>
</ul>
<a id="executeOther(com.djrapitops.plan.storage.database.transactions.Transaction)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>executeOther</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;executeOther&#8203;(<a href="Transaction.html" title="class in com.djrapitops.plan.storage.database.transactions">Transaction</a>&nbsp;transaction)</pre>
</li>
</ul>
<a id="getDBState()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDBState</h4>
<pre class="methodSignature">protected&nbsp;<a href="../Database.State.html" title="enum in com.djrapitops.plan.storage.database">Database.State</a>&nbsp;getDBState()</pre>
</li>
</ul>
<a id="getServerUUID()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getServerUUID</h4>
<pre class="methodSignature">protected&nbsp;<a href="../../../identification/ServerUUID.html" title="class in com.djrapitops.plan.identification">ServerUUID</a>&nbsp;getServerUUID()</pre>
</li>
</ul>
<a id="toString()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
</dl>
</li>
</ul>
<a id="wasSuccessful()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>wasSuccessful</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;wasSuccessful()</pre>
</li>
</ul>
<a id="dbIsNotUnderHeavyLoad()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>dbIsNotUnderHeavyLoad</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;dbIsNotUnderHeavyLoad()</pre>
</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="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&nbsp;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:&nbsp;</li>
<li>Nested&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 id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
</footer>
</body>
</html>