blob: 362490c147687ea8d12cacad010e9227ecf5a74f [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.9.1) on Fri Sep 09 19:30:40 KST 2022 -->
<title>BeamBoundedSourceVertex (Nemo Project 0.4 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2022-09-09">
<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="BeamBoundedSourceVertex (Nemo Project 0.4 API)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":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="class-use/BeamBoundedSourceVertex.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&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.nemo.compiler.frontend.beam.source</a></div>
<h2 title="Class BeamBoundedSourceVertex" class="title">Class BeamBoundedSourceVertex&lt;O&gt;</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../../../common/dag/Vertex.html" title="class in org.apache.nemo.common.dag">org.apache.nemo.common.dag.Vertex</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../common/ir/vertex/IRVertex.html" title="class in org.apache.nemo.common.ir.vertex">org.apache.nemo.common.ir.vertex.IRVertex</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../common/ir/vertex/SourceVertex.html" title="class in org.apache.nemo.common.ir.vertex">org.apache.nemo.common.ir.vertex.SourceVertex</a>&lt;org.apache.beam.sdk.util.WindowedValue&lt;O&gt;&gt;</li>
<li>
<ul class="inheritance">
<li>org.apache.nemo.compiler.frontend.beam.source.BeamBoundedSourceVertex&lt;O&gt;</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>O</code> - output type.</dd>
</dl>
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code>java.io.Serializable</code>, <code><a href="../../../../common/Cloneable.html" title="interface in org.apache.nemo.common">Cloneable</a>&lt;<a href="../../../../common/ir/vertex/IRVertex.html" title="class in org.apache.nemo.common.ir.vertex">IRVertex</a>&gt;</code></dd>
</dl>
<hr>
<pre>public final class <span class="typeNameLabel">BeamBoundedSourceVertex&lt;O&gt;</span>
extends <a href="../../../../common/ir/vertex/SourceVertex.html" title="class in org.apache.nemo.common.ir.vertex">SourceVertex</a>&lt;org.apache.beam.sdk.util.WindowedValue&lt;O&gt;&gt;</pre>
<div class="block">SourceVertex implementation for BoundedSource.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../../serialized-form.html#org.apache.nemo.compiler.frontend.beam.source.BeamBoundedSourceVertex">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.beam.sdk.io.BoundedSource,org.apache.beam.sdk.transforms.display.DisplayData)">BeamBoundedSourceVertex</a></span>&#8203;(org.apache.beam.sdk.io.BoundedSource&lt;<a href="BeamBoundedSourceVertex.html" title="type parameter in BeamBoundedSourceVertex">O</a>&gt;&nbsp;source,
org.apache.beam.sdk.transforms.display.DisplayData&nbsp;displayData)</code></th>
<td class="colLast">
<div class="block">Constructor of BeamBoundedSourceVertex.</div>
</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>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#clearInternalStates()">clearInternalStates</a></span>()</code></th>
<td class="colLast">
<div class="block">Clears internal states, must be called after getReadables().</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="BeamBoundedSourceVertex.html" title="class in org.apache.nemo.compiler.frontend.beam.source">BeamBoundedSourceVertex</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getClone()">getClone</a></span>()</code></th>
<td class="colLast">
<div class="block">Creates and returns a copy of this object.</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="#getEstimatedSizeBytes()">getEstimatedSizeBytes</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the estimated size of bytes.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>com.fasterxml.jackson.databind.node.ObjectNode</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPropertiesAsJsonNode()">getPropertiesAsJsonNode</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../../../../common/ir/Readable.html" title="interface in org.apache.nemo.common.ir">Readable</a>&lt;org.apache.beam.sdk.util.WindowedValue&lt;<a href="BeamBoundedSourceVertex.html" title="type parameter in BeamBoundedSourceVertex">O</a>&gt;&gt;&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getReadables(int)">getReadables</a></span>&#8203;(int&nbsp;desiredNumOfSplits)</code></th>
<td class="colLast">
<div class="block">Gets parallel readables.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isBounded()">isBounded</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.nemo.common.ir.vertex.IRVertex">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.nemo.common.ir.vertex.<a href="../../../../common/ir/vertex/IRVertex.html" title="class in org.apache.nemo.common.ir.vertex">IRVertex</a></h3>
<code><a href="../../../../common/ir/vertex/IRVertex.html#copyExecutionPropertiesTo(org.apache.nemo.common.ir.vertex.IRVertex)">copyExecutionPropertiesTo</a>, <a href="../../../../common/ir/vertex/IRVertex.html#getExecutionProperties()">getExecutionProperties</a>, <a href="../../../../common/ir/vertex/IRVertex.html#getIRVertexPropertiesAsJsonNode()">getIRVertexPropertiesAsJsonNode</a>, <a href="../../../../common/ir/vertex/IRVertex.html#getPropertyValue(java.lang.Class)">getPropertyValue</a>, <a href="../../../../common/ir/vertex/IRVertex.html#isUtilityVertex()">isUtilityVertex</a>, <a href="../../../../common/ir/vertex/IRVertex.html#setProperty(org.apache.nemo.common.ir.executionproperty.VertexExecutionProperty)">setProperty</a>, <a href="../../../../common/ir/vertex/IRVertex.html#setPropertyPermanently(org.apache.nemo.common.ir.executionproperty.VertexExecutionProperty)">setPropertyPermanently</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.nemo.common.dag.Vertex">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.nemo.common.dag.<a href="../../../../common/dag/Vertex.html" title="class in org.apache.nemo.common.dag">Vertex</a></h3>
<code><a href="../../../../common/dag/Vertex.html#getId()">getId</a>, <a href="../../../../common/dag/Vertex.html#getNumericId()">getNumericId</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&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</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.beam.sdk.io.BoundedSource,org.apache.beam.sdk.transforms.display.DisplayData)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>BeamBoundedSourceVertex</h4>
<pre>public&nbsp;BeamBoundedSourceVertex&#8203;(org.apache.beam.sdk.io.BoundedSource&lt;<a href="BeamBoundedSourceVertex.html" title="type parameter in BeamBoundedSourceVertex">O</a>&gt;&nbsp;source,
org.apache.beam.sdk.transforms.display.DisplayData&nbsp;displayData)</pre>
<div class="block">Constructor of BeamBoundedSourceVertex.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>source</code> - BoundedSource to read from.</dd>
<dd><code>displayData</code> - data to display.</dd>
</dl>
</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="getClone()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getClone</h4>
<pre class="methodSignature">public&nbsp;<a href="BeamBoundedSourceVertex.html" title="class in org.apache.nemo.compiler.frontend.beam.source">BeamBoundedSourceVertex</a>&nbsp;getClone()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../common/Cloneable.html#getClone()">Cloneable</a></code></span></div>
<div class="block">Creates and returns a copy of this object.
<p>
The precise meaning of "copy" may depend on the class of the object.
The general intent is that, all fields of the object are copied.
</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a clone of this object.</dd>
</dl>
</li>
</ul>
<a id="isBounded()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isBounded</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isBounded()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../common/ir/vertex/SourceVertex.html#isBounded()">isBounded</a></code>&nbsp;in class&nbsp;<code><a href="../../../../common/ir/vertex/SourceVertex.html" title="class in org.apache.nemo.common.ir.vertex">SourceVertex</a>&lt;org.apache.beam.sdk.util.WindowedValue&lt;<a href="BeamBoundedSourceVertex.html" title="type parameter in BeamBoundedSourceVertex">O</a>&gt;&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if it is bounded source</dd>
</dl>
</li>
</ul>
<a id="getReadables(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getReadables</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;<a href="../../../../common/ir/Readable.html" title="interface in org.apache.nemo.common.ir">Readable</a>&lt;org.apache.beam.sdk.util.WindowedValue&lt;<a href="BeamBoundedSourceVertex.html" title="type parameter in BeamBoundedSourceVertex">O</a>&gt;&gt;&gt;&nbsp;getReadables&#8203;(int&nbsp;desiredNumOfSplits)
throws java.lang.Exception</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../common/ir/vertex/SourceVertex.html#getReadables(int)">SourceVertex</a></code></span></div>
<div class="block">Gets parallel readables.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../common/ir/vertex/SourceVertex.html#getReadables(int)">getReadables</a></code>&nbsp;in class&nbsp;<code><a href="../../../../common/ir/vertex/SourceVertex.html" title="class in org.apache.nemo.common.ir.vertex">SourceVertex</a>&lt;org.apache.beam.sdk.util.WindowedValue&lt;<a href="BeamBoundedSourceVertex.html" title="type parameter in BeamBoundedSourceVertex">O</a>&gt;&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>desiredNumOfSplits</code> - number of splits desired.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the list of readables.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.Exception</code> - if fail to get.</dd>
</dl>
</li>
</ul>
<a id="getEstimatedSizeBytes()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEstimatedSizeBytes</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getEstimatedSizeBytes()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../common/ir/vertex/SourceVertex.html#getEstimatedSizeBytes()">SourceVertex</a></code></span></div>
<div class="block">Gets the estimated size of bytes. Returns 0L if not applicable.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../common/ir/vertex/SourceVertex.html#getEstimatedSizeBytes()">getEstimatedSizeBytes</a></code>&nbsp;in class&nbsp;<code><a href="../../../../common/ir/vertex/SourceVertex.html" title="class in org.apache.nemo.common.ir.vertex">SourceVertex</a>&lt;org.apache.beam.sdk.util.WindowedValue&lt;<a href="BeamBoundedSourceVertex.html" title="type parameter in BeamBoundedSourceVertex">O</a>&gt;&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>size of input bytes.</dd>
</dl>
</li>
</ul>
<a id="clearInternalStates()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearInternalStates</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clearInternalStates()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../common/ir/vertex/SourceVertex.html#clearInternalStates()">SourceVertex</a></code></span></div>
<div class="block">Clears internal states, must be called after getReadables().
Concretely, this clears the huge list of input splits held by objects like BeamBoundedSourceVertex before
sending the vertex to remote executors.
Between clearing states of an existing vertex, and creating a new vertex, we've chosen the former approach
to ensure consistent use of the same IRVertex object across the compiler, the master, and the executors.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../common/ir/vertex/SourceVertex.html#clearInternalStates()">clearInternalStates</a></code>&nbsp;in class&nbsp;<code><a href="../../../../common/ir/vertex/SourceVertex.html" title="class in org.apache.nemo.common.ir.vertex">SourceVertex</a>&lt;org.apache.beam.sdk.util.WindowedValue&lt;<a href="BeamBoundedSourceVertex.html" title="type parameter in BeamBoundedSourceVertex">O</a>&gt;&gt;</code></dd>
</dl>
</li>
</ul>
<a id="getPropertiesAsJsonNode()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getPropertiesAsJsonNode</h4>
<pre class="methodSignature">public&nbsp;com.fasterxml.jackson.databind.node.ObjectNode&nbsp;getPropertiesAsJsonNode()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../common/dag/Vertex.html#getPropertiesAsJsonNode()">getPropertiesAsJsonNode</a></code>&nbsp;in class&nbsp;<code><a href="../../../../common/dag/Vertex.html" title="class in org.apache.nemo.common.dag">Vertex</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>JSON representation of additional properties</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/BeamBoundedSourceVertex.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&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>
<p class="legalCopy"><small>Copyright &#169; 2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>