<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Engine (Qpid ProtonJ2 Parent 1.0.0-M9 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Engine (Qpid ProtonJ2 Parent 1.0.0-M9 API)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":18,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":18,"i12":6,"i13":18,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":6,"i20":6,"i21":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],16:["t5","Default Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</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/Engine.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="../../../../../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>
<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>Constr&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>Constr&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.qpid.protonj2.engine</a></div>
<h2 title="Interface Engine" class="title">Interface Engine</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">Consumer</a>&lt;<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;</code></dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><code><a href="impl/ProtonEngine.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonEngine</a></code></dd>
</dl>
<hr>
<pre>public interface <span class="typeNameLabel">Engine</span>
extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">Consumer</a>&lt;<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;</pre>
<div class="block">AMQP Engine interface.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== 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="t5" class="tableTab"><span><a href="javascript:show(16);">Default 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>default void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#accept(org.apache.qpid.protonj2.buffer.ProtonBuffer)">accept</a></span>&#8203;(<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;input)</code></th>
<td class="colLast">
<div class="block">Provide data input for this Engine from some external source.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="EngineConfiguration.html" title="interface in org.apache.qpid.protonj2.engine">EngineConfiguration</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#configuration()">configuration</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the Configuration for this engine.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="Connection.html" title="interface in org.apache.qpid.protonj2.engine">Connection</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#connection()">connection</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the <a href="Connection.html" title="interface in org.apache.qpid.protonj2.engine"><code>Connection</code></a> instance that is associated with this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> instance.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#engineFailed(java.lang.Throwable)">engineFailed</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a>&nbsp;cause)</code></th>
<td class="colLast">
<div class="block">Transition the <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> to a failed state if not already closed or closing.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#errorHandler(org.apache.qpid.protonj2.engine.EventHandler)">errorHandler</a></span>&#8203;(<a href="EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&gt;&nbsp;engineFailure)</code></th>
<td class="colLast">
<div class="block">Sets a handler instance that will be notified when the engine encounters a fatal error.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#failureCause()">failureCause</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ingest(org.apache.qpid.protonj2.buffer.ProtonBuffer)">ingest</a></span>&#8203;(<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;input)</code></th>
<td class="colLast">
<div class="block">Provide data input for this Engine from some external source.</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="#isFailed()">isFailed</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isRunning()">isRunning</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isShutdown()">isShutdown</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isWritable()">isWritable</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns true if the engine is accepting input from the ingestion entry points.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>default <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#outputConsumer(java.util.function.Consumer)">outputConsumer</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">Consumer</a>&lt;<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;&nbsp;consumer)</code></th>
<td class="colLast">
<div class="block">Sets a <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink"><code>Consumer</code></a> instance that will be notified when data from the engine is ready to
 be written to some output sink (socket etc).</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#outputHandler(java.util.function.BiConsumer)">outputHandler</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/BiConsumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">BiConsumer</a>&lt;<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Runnable</a>&gt;&nbsp;output)</code></th>
<td class="colLast">
<div class="block">Sets a <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/BiConsumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink"><code>BiConsumer</code></a> instance that will be notified when data from the engine is ready to
 be written to some output sink (socket etc).</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>default <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#outputHandler(org.apache.qpid.protonj2.engine.EventHandler)">outputHandler</a></span>&#8203;(<a href="EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;&nbsp;output)</code></th>
<td class="colLast">
<div class="block">Sets a handler instance that will be notified when data from the engine is ready to
 be written to some output sink (socket etc).</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#pipeline()">pipeline</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the EnginePipeline for this Engine.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="EngineSaslDriver.html" title="interface in org.apache.qpid.protonj2.engine">EngineSaslDriver</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#saslDriver()">saslDriver</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the SASL driver for this engine, if no SASL layer is configured then a
 default no-op driver must be returned that indicates this.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#shutdown()">shutdown</a></span>()</code></th>
<td class="colLast">
<div class="block">Shutdown the engine preventing any future outbound or inbound processing.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#shutdownHandler(org.apache.qpid.protonj2.engine.EventHandler)">shutdownHandler</a></span>&#8203;(<a href="EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&gt;&nbsp;engineShutdownEventHandler)</code></th>
<td class="colLast">
<div class="block">Sets a handler instance that will be notified when the engine is shut down via a call to the
 <a href="#shutdown()"><code>shutdown()</code></a> method is called.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code><a href="Connection.html" title="interface in org.apache.qpid.protonj2.engine">Connection</a></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">Starts the engine and returns the <a href="Connection.html" title="interface in org.apache.qpid.protonj2.engine"><code>Connection</code></a> instance that is bound to this Engine.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code><a href="EngineState.html" title="enum in org.apache.qpid.protonj2.engine">EngineState</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#state()">state</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#tick(long)">tick</a></span>&#8203;(long&nbsp;currentTime)</code></th>
<td class="colLast">
<div class="block">Prompt the engine to perform idle-timeout/heartbeat handling, and return an absolute
 deadline in milliseconds that tick must again be called by/at, based on the provided
 current time in milliseconds, to ensure the periodic work is carried out as necessary.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#tickAuto(java.util.concurrent.ScheduledExecutorService)">tickAuto</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/ScheduledExecutorService.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink">ScheduledExecutorService</a>&nbsp;executor)</code></th>
<td class="colLast">
<div class="block">Allows the engine to manage idle timeout processing by providing it the single threaded executor
 context where all transport work is done which ensures singled threaded access while removing the
 need for the client library or server application to manage calls to the <a href="#tick(long)"><code>tick(long)</code></a> methods.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.util.function.Consumer">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;java.util.function.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">Consumer</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true#andThen(java.util.function.Consumer)" title="class or interface in java.util.function" class="externalLink">andThen</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="isWritable()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isWritable</h4>
<pre class="methodSignature">boolean&nbsp;isWritable()</pre>
<div class="block">Returns true if the engine is accepting input from the ingestion entry points.
 <p>
 When false any attempts to write more data into the engine will result in an
 error being returned from the write operation.  An engine that has not been
 started or that has been failed or shutdown will report as not writable.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the engine is current accepting more input.</dd>
</dl>
</li>
</ul>
<a id="isRunning()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRunning</h4>
<pre class="methodSignature">boolean&nbsp;isRunning()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the Engine has entered the running state and is not failed or shutdown.</dd>
</dl>
</li>
</ul>
<a id="isShutdown()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isShutdown</h4>
<pre class="methodSignature">boolean&nbsp;isShutdown()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the Engine has been shutdown and is no longer usable.</dd>
</dl>
</li>
</ul>
<a id="isFailed()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFailed</h4>
<pre class="methodSignature">boolean&nbsp;isFailed()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the Engine has encountered a critical error and cannot produce new data.</dd>
</dl>
</li>
</ul>
<a id="failureCause()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>failureCause</h4>
<pre class="methodSignature"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a>&nbsp;failureCause()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the error that caused the <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> fail and shutdown (or null if not failed).</dd>
</dl>
</li>
</ul>
<a id="state()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>state</h4>
<pre class="methodSignature"><a href="EngineState.html" title="enum in org.apache.qpid.protonj2.engine">EngineState</a>&nbsp;state()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the current state of the engine.</dd>
</dl>
</li>
</ul>
<a id="connection()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>connection</h4>
<pre class="methodSignature"><a href="Connection.html" title="interface in org.apache.qpid.protonj2.engine">Connection</a>&nbsp;connection()</pre>
<div class="block">Gets the <a href="Connection.html" title="interface in org.apache.qpid.protonj2.engine"><code>Connection</code></a> instance that is associated with this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> instance.
 It is valid for an engine implementation to not return a <a href="Connection.html" title="interface in org.apache.qpid.protonj2.engine"><code>Connection</code></a> instance prior
 to the engine having been started.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="Connection.html" title="interface in org.apache.qpid.protonj2.engine"><code>Connection</code></a> that is linked to this engine instance.</dd>
</dl>
</li>
</ul>
<a id="start()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>start</h4>
<pre class="methodSignature"><a href="Connection.html" title="interface in org.apache.qpid.protonj2.engine">Connection</a>&nbsp;start()
          throws <a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a></pre>
<div class="block">Starts the engine and returns the <a href="Connection.html" title="interface in org.apache.qpid.protonj2.engine"><code>Connection</code></a> instance that is bound to this Engine.

 A non-started Engine will not allow ingestion of any inbound data and a Connection linked to
 the engine that was obtained from the <a href="#connection()"><code>connection()</code></a> method cannot produce any
 outbound data.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the Connection instance that is linked to this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a></code> - if the Engine state has already transition to shutdown or failed.</dd>
</dl>
</li>
</ul>
<a id="shutdown()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shutdown</h4>
<pre class="methodSignature"><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&nbsp;shutdown()</pre>
<div class="block">Shutdown the engine preventing any future outbound or inbound processing.

 When the engine is shut down any resources, <a href="Connection.html" title="interface in org.apache.qpid.protonj2.engine"><code>Connection</code></a>, <a href="Session.html" title="interface in org.apache.qpid.protonj2.engine"><code>Session</code></a> or <a href="Link.html" title="interface in org.apache.qpid.protonj2.engine"><code>Link</code></a>
 instances that have an engine shutdown event handler registered will be notified and should react
 by locally closing that resource if they wish to ensure that the resource's local close event
 handler gets signaled if that resource is not already locally closed.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a></dd>
</dl>
</li>
</ul>
<a id="engineFailed(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>engineFailed</h4>
<pre class="methodSignature"><a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a>&nbsp;engineFailed&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Throwable</a>&nbsp;cause)</pre>
<div class="block">Transition the <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> to a failed state if not already closed or closing.

 If called when the engine has not failed the engine will be transitioned to the failed state
 and the method will return an appropriate <a href="exceptions/EngineFailedException.html" title="class in org.apache.qpid.protonj2.engine.exceptions"><code>EngineFailedException</code></a> that wraps the given
 cause.  If called after the engine was shutdown the method returns an <a href="exceptions/EngineShutdownException.html" title="class in org.apache.qpid.protonj2.engine.exceptions"><code>EngineShutdownException</code></a>
 indicating that the engine was already shutdown.  Repeated calls to this method while the engine
 is in the failed state must not alter the original failure error or elicit new engine failed
 event notifications.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>cause</code> - The exception that caused the engine to be forcibly transitioned to the failed state.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an <a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions"><code>EngineStateException</code></a> that can be thrown indicating the failure and engine state.</dd>
</dl>
</li>
</ul>
<a id="ingest(org.apache.qpid.protonj2.buffer.ProtonBuffer)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ingest</h4>
<pre class="methodSignature"><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&nbsp;ingest&#8203;(<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;input)
       throws <a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a></pre>
<div class="block">Provide data input for this Engine from some external source.  If the engine is not writable
 when this method is called an <a href="exceptions/EngineNotWritableException.html" title="class in org.apache.qpid.protonj2.engine.exceptions"><code>EngineNotWritableException</code></a> will be thrown if unless the
 reason for the not writable state is due to engine failure or the engine already having been
 shut down in which case the appropriate <a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions"><code>EngineStateException</code></a> will be thrown to indicate
 the reason.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>input</code> - The data to feed into to Engine.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a></code> - if the Engine state precludes accepting new input.</dd>
</dl>
</li>
</ul>
<a id="accept(org.apache.qpid.protonj2.buffer.ProtonBuffer)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>accept</h4>
<pre class="methodSignature">default&nbsp;void&nbsp;accept&#8203;(<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;input)
             throws <a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a></pre>
<div class="block">Provide data input for this Engine from some external source.  If the engine is not writable
 when this method is called an <a href="exceptions/EngineNotWritableException.html" title="class in org.apache.qpid.protonj2.engine.exceptions"><code>EngineNotWritableException</code></a> will be thrown if unless the
 reason for the not writable state is due to engine failure or the engine already having been
 shut down in which case the appropriate <a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions"><code>EngineStateException</code></a> will be thrown to indicate
 the reason.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true#accept(T)" title="class or interface in java.util.function" class="externalLink">accept</a></code>&nbsp;in interface&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">Consumer</a>&lt;<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>input</code> - The data to feed into to Engine.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a></code> - if the Engine state precludes accepting new input.</dd>
</dl>
</li>
</ul>
<a id="tick(long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tick</h4>
<pre class="methodSignature">long&nbsp;tick&#8203;(long&nbsp;currentTime)
   throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IllegalStateException</a>,
          <a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a></pre>
<div class="block">Prompt the engine to perform idle-timeout/heartbeat handling, and return an absolute
 deadline in milliseconds that tick must again be called by/at, based on the provided
 current time in milliseconds, to ensure the periodic work is carried out as necessary.
 It is an error to call this method if the connection has not been opened.

 A returned deadline of 0 indicates there is no periodic work necessitating tick be called, e.g.
 because neither peer has defined an idle-timeout value.

 The provided milliseconds time values should be derived from a monotonic source such as
 <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/System.html?is-external=true#nanoTime()" title="class or interface in java.lang" class="externalLink"><code>System.nanoTime()</code></a> to prevent wall clock changes leading to erroneous behaviour. Note
 that for <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/System.html?is-external=true#nanoTime()" title="class or interface in java.lang" class="externalLink"><code>System.nanoTime()</code></a> derived values in particular that the returned deadline
 could be a different sign than the originally given value, and so (if non-zero) the returned
 deadline should have the current time originally provided subtracted from it in order to
 establish a relative time delay to the next deadline.

 Supplying <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/System.html?is-external=true#currentTimeMillis()" title="class or interface in java.lang" class="externalLink"><code>System.currentTimeMillis()</code></a> derived values can lead to erroneous behaviour
 during wall clock changes and so is not recommended.

 It is an error to call this method if <a href="#tickAuto(java.util.concurrent.ScheduledExecutorService)"><code>tickAuto(ScheduledExecutorService)</code></a> was called.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>currentTime</code> - the current time of this tick call.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the absolute deadline in milliseconds to next call tick by/at, or 0 if there is none.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IllegalStateException</a></code> - if the <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> is already performing auto tick handling.</dd>
<dd><code><a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a></code> - if the Engine state precludes accepting new input.</dd>
</dl>
</li>
</ul>
<a id="tickAuto(java.util.concurrent.ScheduledExecutorService)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tickAuto</h4>
<pre class="methodSignature"><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&nbsp;tickAuto&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/ScheduledExecutorService.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink">ScheduledExecutorService</a>&nbsp;executor)
         throws <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IllegalStateException</a>,
                <a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a></pre>
<div class="block">Allows the engine to manage idle timeout processing by providing it the single threaded executor
 context where all transport work is done which ensures singled threaded access while removing the
 need for the client library or server application to manage calls to the <a href="#tick(long)"><code>tick(long)</code></a> methods.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>executor</code> - The single threaded execution context where all engine work takes place.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang" class="externalLink">IllegalStateException</a></code> - if the <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> is already performing auto tick handling.</dd>
<dd><code><a href="exceptions/EngineStateException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineStateException</a></code> - if the Engine state precludes accepting new input.</dd>
</dl>
</li>
</ul>
<a id="pipeline()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>pipeline</h4>
<pre class="methodSignature"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a>&nbsp;pipeline()</pre>
<div class="block">Gets the EnginePipeline for this Engine.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a> for this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a>.</dd>
</dl>
</li>
</ul>
<a id="configuration()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>configuration</h4>
<pre class="methodSignature"><a href="EngineConfiguration.html" title="interface in org.apache.qpid.protonj2.engine">EngineConfiguration</a>&nbsp;configuration()</pre>
<div class="block">Gets the Configuration for this engine.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the configuration object for this engine.</dd>
</dl>
</li>
</ul>
<a id="saslDriver()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>saslDriver</h4>
<pre class="methodSignature"><a href="EngineSaslDriver.html" title="interface in org.apache.qpid.protonj2.engine">EngineSaslDriver</a>&nbsp;saslDriver()</pre>
<div class="block">Gets the SASL driver for this engine, if no SASL layer is configured then a
 default no-op driver must be returned that indicates this.  The SASL driver provides
 the engine with client and server side SASL handshaking support.  An <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a>
 implementation can support pluggable SASL drivers or exert tight control over the
 driver as it sees fit.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the SASL driver for the engine.</dd>
</dl>
</li>
</ul>
<a id="outputHandler(org.apache.qpid.protonj2.engine.EventHandler)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>outputHandler</h4>
<pre class="methodSignature">default&nbsp;<a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&nbsp;outputHandler&#8203;(<a href="EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;&nbsp;output)</pre>
<div class="block">Sets a handler instance that will be notified when data from the engine is ready to
 be written to some output sink (socket etc).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>output</code> - The <a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> handler instance that performs IO for the engine output.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a></dd>
</dl>
</li>
</ul>
<a id="outputConsumer(java.util.function.Consumer)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>outputConsumer</h4>
<pre class="methodSignature">default&nbsp;<a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&nbsp;outputConsumer&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">Consumer</a>&lt;<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&gt;&nbsp;consumer)</pre>
<div class="block">Sets a <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Consumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink"><code>Consumer</code></a> instance that will be notified when data from the engine is ready to
 be written to some output sink (socket etc).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>consumer</code> - The <a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> consumer instance that performs IO for the engine output.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a></dd>
</dl>
</li>
</ul>
<a id="outputHandler(java.util.function.BiConsumer)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>outputHandler</h4>
<pre class="methodSignature"><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&nbsp;outputHandler&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/BiConsumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink">BiConsumer</a>&lt;<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>,&#8203;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang" class="externalLink">Runnable</a>&gt;&nbsp;output)</pre>
<div class="block">Sets a <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/BiConsumer.html?is-external=true" title="class or interface in java.util.function" class="externalLink"><code>BiConsumer</code></a> instance that will be notified when data from the engine is ready to
 be written to some output sink (socket etc).  The <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang" class="externalLink"><code>Runnable</code></a> value provided (if non-null)
 should be invoked once the I/O operation has completely successfully.  If the event of an error
 writing the data the handler should throw an error or if performed asynchronously the <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a>
 should be marked failed via a call to <a href="#engineFailed(java.lang.Throwable)"><code>engineFailed(Throwable)</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>output</code> - The <a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> handler instance that performs IO for the engine output.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a></dd>
</dl>
</li>
</ul>
<a id="errorHandler(org.apache.qpid.protonj2.engine.EventHandler)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>errorHandler</h4>
<pre class="methodSignature"><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&nbsp;errorHandler&#8203;(<a href="EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&gt;&nbsp;engineFailure)</pre>
<div class="block">Sets a handler instance that will be notified when the engine encounters a fatal error.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>engineFailure</code> - The <a href="exceptions/ProtonException.html" title="class in org.apache.qpid.protonj2.engine.exceptions"><code>ProtonException</code></a> handler instance that will be notified if the engine fails.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a></dd>
</dl>
</li>
</ul>
<a id="shutdownHandler(org.apache.qpid.protonj2.engine.EventHandler)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>shutdownHandler</h4>
<pre class="methodSignature"><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&nbsp;shutdownHandler&#8203;(<a href="EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a>&gt;&nbsp;engineShutdownEventHandler)</pre>
<div class="block">Sets a handler instance that will be notified when the engine is shut down via a call to the
 <a href="#shutdown()"><code>shutdown()</code></a> method is called.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>engineShutdownEventHandler</code> - The <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> instance that was was explicitly shut down.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a></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/Engine.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="../../../../../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>Constr&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>Constr&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; 2022 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
