blob: 82dde909c991316899ee6cbb453a3100aa10a3f5 [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>BaseFileScanTask</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="BaseFileScanTask";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":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 = 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>Field&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>Field&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">org.apache.iceberg</a></div>
<h2 title="Class BaseFileScanTask" class="title">Class BaseFileScanTask</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.iceberg.BaseFileScanTask</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code>java.io.Serializable</code>, <code><a href="ContentScanTask.html" title="interface in org.apache.iceberg">ContentScanTask</a>&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;</code>, <code><a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a></code>, <code><a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a></code>, <code><a href="SplittableScanTask.html" title="interface in org.apache.iceberg">SplittableScanTask</a>&lt;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>&gt;</code></dd>
</dl>
<hr>
<pre>public class <span class="typeNameLabel">BaseFileScanTask</span>
extends java.lang.Object
implements <a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a></pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../serialized-form.html#org.apache.iceberg.BaseFileScanTask">Serialized Form</a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== 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">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(org.apache.iceberg.DataFile,org.apache.iceberg.DeleteFile%5B%5D,java.lang.String,java.lang.String,org.apache.iceberg.expressions.ResidualEvaluator)">BaseFileScanTask</a></span>&#8203;(<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&nbsp;file,
<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>[]&nbsp;deletes,
java.lang.String&nbsp;schemaString,
java.lang.String&nbsp;specString,
<a href="expressions/ResidualEvaluator.html" title="class in org.apache.iceberg.expressions">ResidualEvaluator</a>&nbsp;residuals)</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="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>java.util.List&lt;<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deletes()">deletes</a></span>()</code></th>
<td class="colLast">
<div class="block">A list of <a href="DeleteFile.html" title="interface in org.apache.iceberg"><code>delete files</code></a> to apply when reading the task's data file.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#file()">file</a></span>()</code></th>
<td class="colLast">
<div class="block">The <a href="ContentFile.html" title="interface in org.apache.iceberg"><code>file</code></a> to scan.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#length()">length</a></span>()</code></th>
<td class="colLast">
<div class="block">The number of bytes to scan from the <a href="ContentScanTask.html#start()"><code>ContentScanTask.start()</code></a> position in the file.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#residual()">residual</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the residual expression that should be applied to rows in this file scan.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="PartitionSpec.html" title="class in org.apache.iceberg">PartitionSpec</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#spec()">spec</a></span>()</code></th>
<td class="colLast">
<div class="block">The <a href="PartitionSpec.html" title="class in org.apache.iceberg"><code>spec</code></a> used to store this file.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>java.lang.Iterable&lt;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#split(long)">split</a></span>&#8203;(long&nbsp;targetSplitSize)</code></th>
<td class="colLast">
<div class="block">Attempts to split this scan task into several smaller scan tasks, each close to <code>splitSize</code> size.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#start()">start</a></span>()</code></th>
<td class="colLast">
<div class="block">The starting position of this scan range in the file.</div>
</td>
</tr>
<tr id="i7" 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>
</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>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.iceberg.FileScanTask">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.iceberg.<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a></h3>
<code><a href="FileScanTask.html#asFileScanTask()">asFileScanTask</a>, <a href="FileScanTask.html#filesCount()">filesCount</a>, <a href="FileScanTask.html#isFileScanTask()">isFileScanTask</a>, <a href="FileScanTask.html#sizeBytes()">sizeBytes</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.iceberg.ScanTask">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.iceberg.<a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a></h3>
<code><a href="ScanTask.html#asCombinedScanTask()">asCombinedScanTask</a>, <a href="ScanTask.html#asDataTask()">asDataTask</a>, <a href="ScanTask.html#isDataTask()">isDataTask</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= 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;(org.apache.iceberg.DataFile,org.apache.iceberg.DeleteFile[],java.lang.String,java.lang.String,org.apache.iceberg.expressions.ResidualEvaluator)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>BaseFileScanTask</h4>
<pre>public&nbsp;BaseFileScanTask&#8203;(<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&nbsp;file,
<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>[]&nbsp;deletes,
java.lang.String&nbsp;schemaString,
java.lang.String&nbsp;specString,
<a href="expressions/ResidualEvaluator.html" title="class in org.apache.iceberg.expressions">ResidualEvaluator</a>&nbsp;residuals)</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="file()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>file</h4>
<pre class="methodSignature">public&nbsp;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&nbsp;file()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ContentScanTask.html#file()">ContentScanTask</a></code></span></div>
<div class="block">The <a href="ContentFile.html" title="interface in org.apache.iceberg"><code>file</code></a> to scan.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ContentScanTask.html#file()">file</a></code>&nbsp;in interface&nbsp;<code><a href="ContentScanTask.html" title="interface in org.apache.iceberg">ContentScanTask</a>&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the file to scan</dd>
</dl>
</li>
</ul>
<a id="deletes()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deletes</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&gt;&nbsp;deletes()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="FileScanTask.html#deletes()">FileScanTask</a></code></span></div>
<div class="block">A list of <a href="DeleteFile.html" title="interface in org.apache.iceberg"><code>delete files</code></a> to apply when reading the task's data file.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="FileScanTask.html#deletes()">deletes</a></code>&nbsp;in interface&nbsp;<code><a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a list of delete files to apply</dd>
</dl>
</li>
</ul>
<a id="spec()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>spec</h4>
<pre class="methodSignature">public&nbsp;<a href="PartitionSpec.html" title="class in org.apache.iceberg">PartitionSpec</a>&nbsp;spec()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ContentScanTask.html#spec()">ContentScanTask</a></code></span></div>
<div class="block">The <a href="PartitionSpec.html" title="class in org.apache.iceberg"><code>spec</code></a> used to store this file.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ContentScanTask.html#spec()">spec</a></code>&nbsp;in interface&nbsp;<code><a href="ContentScanTask.html" title="interface in org.apache.iceberg">ContentScanTask</a>&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the partition spec from this file's manifest</dd>
</dl>
</li>
</ul>
<a id="start()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>start</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;start()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ContentScanTask.html#start()">ContentScanTask</a></code></span></div>
<div class="block">The starting position of this scan range in the file.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ContentScanTask.html#start()">start</a></code>&nbsp;in interface&nbsp;<code><a href="ContentScanTask.html" title="interface in org.apache.iceberg">ContentScanTask</a>&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the start position of this scan range</dd>
</dl>
</li>
</ul>
<a id="length()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>length</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;length()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ContentScanTask.html#length()">ContentScanTask</a></code></span></div>
<div class="block">The number of bytes to scan from the <a href="ContentScanTask.html#start()"><code>ContentScanTask.start()</code></a> position in the file.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ContentScanTask.html#length()">length</a></code>&nbsp;in interface&nbsp;<code><a href="ContentScanTask.html" title="interface in org.apache.iceberg">ContentScanTask</a>&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the length of this scan range in bytes</dd>
</dl>
</li>
</ul>
<a id="residual()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>residual</h4>
<pre class="methodSignature">public&nbsp;<a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;residual()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ContentScanTask.html#residual()">ContentScanTask</a></code></span></div>
<div class="block">Returns the residual expression that should be applied to rows in this file scan.
<p>
The residual expression for a file is a filter expression created by partially evaluating the scan's filter
using the file's partition data.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ContentScanTask.html#residual()">residual</a></code>&nbsp;in interface&nbsp;<code><a href="ContentScanTask.html" title="interface in org.apache.iceberg">ContentScanTask</a>&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a residual expression to apply to rows from this scan</dd>
</dl>
</li>
</ul>
<a id="split(long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>split</h4>
<pre class="methodSignature">public&nbsp;java.lang.Iterable&lt;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>&gt;&nbsp;split&#8203;(long&nbsp;targetSplitSize)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="SplittableScanTask.html#split(long)">SplittableScanTask</a></code></span></div>
<div class="block">Attempts to split this scan task into several smaller scan tasks, each close to <code>splitSize</code> size.
<p>
Note the target split size is just guidance and the actual split size may be either smaller or larger.
File formats like Parquet may leverage the row group offset information while splitting tasks.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="SplittableScanTask.html#split(long)">split</a></code>&nbsp;in interface&nbsp;<code><a href="SplittableScanTask.html" title="interface in org.apache.iceberg">SplittableScanTask</a>&lt;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>targetSplitSize</code> - the target size of each new scan task in bytes</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an Iterable of smaller tasks</dd>
</dl>
</li>
</ul>
<a id="toString()">
<!-- -->
</a>
<ul class="blockListLast">
<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>
</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>Field&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>Field&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>