<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) -->
<title>EnginePipeline (Qpid ProtonJ2 Parent 1.0.0-M18 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: package: org.apache.qpid.protonj2.engine, interface: EnginePipeline">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/EnginePipeline.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<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="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.qpid.protonj2.engine</a></div>
<h1 title="Interface EnginePipeline" class="title">Interface EnginePipeline</h1>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Known Implementing Classes:</dt>
<dd><code><a href="impl/ProtonEnginePipeline.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonEnginePipeline</a></code>, <code><a href="impl/ProtonEnginePipelineProxy.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonEnginePipelineProxy</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public interface </span><span class="element-name type-name-label">EnginePipeline</span></div>
<div class="block">Pipeline of handlers for Engine work.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab3" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab3', 3)" class="table-tab">Abstract Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#addFirst(java.lang.String,org.apache.qpid.protonj2.engine.EngineHandler)" class="member-name-link">addFirst</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name,
 <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a>&nbsp;handler)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Adds the given handler to the front of the pipeline with the given name stored for
 later lookup or remove operations.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#addLast(java.lang.String,org.apache.qpid.protonj2.engine.EngineHandler)" class="member-name-link">addLast</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name,
 <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a>&nbsp;handler)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Adds the given handler to the end of the pipeline with the given name stored for
 later lookup or remove operations.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#engine()" class="member-name-link">engine</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#find(java.lang.String)" class="member-name-link">find</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Finds and returns first handler that is found in the pipeline that matches the given name.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#fireEngineStarting()" class="member-name-link">fireEngineStarting</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Fires an engine starting event to each handler in the pipeline.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#fireEngineStateChanged()" class="member-name-link">fireEngineStateChanged</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Fires an engine state changed event to each handler in the pipeline.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#fireFailed(org.apache.qpid.protonj2.engine.exceptions.EngineFailedException)" class="member-name-link">fireFailed</a><wbr>(<a href="exceptions/EngineFailedException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineFailedException</a>&nbsp;failure)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Fires an engine failed event into each <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline indicating
 that the engine is now failed and should not accept or produce new work.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#fireRead(org.apache.qpid.protonj2.buffer.ProtonBuffer)" class="member-name-link">fireRead</a><wbr>(<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;input)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Fires a read event consisting of the given <a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> into the pipeline starting
 from the last <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the incoming
 work is fully processed.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#fireRead(org.apache.qpid.protonj2.engine.HeaderEnvelope)" class="member-name-link">fireRead</a><wbr>(<a href="HeaderEnvelope.html" title="class in org.apache.qpid.protonj2.engine">HeaderEnvelope</a>&nbsp;header)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Fires a read event consisting of the given <a href="HeaderEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>HeaderEnvelope</code></a> into the pipeline starting
 from the last <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the incoming
 work is fully processed.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#fireRead(org.apache.qpid.protonj2.engine.IncomingAMQPEnvelope)" class="member-name-link">fireRead</a><wbr>(<a href="IncomingAMQPEnvelope.html" title="class in org.apache.qpid.protonj2.engine">IncomingAMQPEnvelope</a>&nbsp;envelope)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Fires a read event consisting of the given <a href="IncomingAMQPEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>IncomingAMQPEnvelope</code></a> into the pipeline starting
 from the last <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the incoming
 work is fully processed.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#fireRead(org.apache.qpid.protonj2.engine.SASLEnvelope)" class="member-name-link">fireRead</a><wbr>(<a href="SASLEnvelope.html" title="class in org.apache.qpid.protonj2.engine">SASLEnvelope</a>&nbsp;envelope)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Fires a read event consisting of the given <a href="SASLEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>SASLEnvelope</code></a> into the pipeline starting
 from the last <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the incoming
 work is fully processed.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#fireWrite(org.apache.qpid.protonj2.buffer.ProtonBuffer,java.lang.Runnable)" class="member-name-link">fireWrite</a><wbr>(<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;buffer,
 <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;ioComplete)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Fires a write event consisting of the given <a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> into the pipeline starting
 from the first <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the outgoing
 work is fully processed.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#fireWrite(org.apache.qpid.protonj2.engine.HeaderEnvelope)" class="member-name-link">fireWrite</a><wbr>(<a href="HeaderEnvelope.html" title="class in org.apache.qpid.protonj2.engine">HeaderEnvelope</a>&nbsp;envelope)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Fires a write event consisting of the given <a href="HeaderEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>HeaderEnvelope</code></a> into the pipeline starting
 from the first <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the outgoing
 work is fully processed.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#fireWrite(org.apache.qpid.protonj2.engine.OutgoingAMQPEnvelope)" class="member-name-link">fireWrite</a><wbr>(<a href="OutgoingAMQPEnvelope.html" title="class in org.apache.qpid.protonj2.engine">OutgoingAMQPEnvelope</a>&nbsp;envelope)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Fires a write event consisting of the given <a href="OutgoingAMQPEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>OutgoingAMQPEnvelope</code></a> into the pipeline starting
 from the first <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the outgoing
 work is fully processed.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#fireWrite(org.apache.qpid.protonj2.engine.SASLEnvelope)" class="member-name-link">fireWrite</a><wbr>(<a href="SASLEnvelope.html" title="class in org.apache.qpid.protonj2.engine">SASLEnvelope</a>&nbsp;envelope)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Fires a write event consisting of the given <a href="SASLEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>SASLEnvelope</code></a> into the pipeline starting
 from the first <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the outgoing
 work is fully processed.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#first()" class="member-name-link">first</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EngineHandlerContext.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandlerContext</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#firstContext()" class="member-name-link">firstContext</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#last()" class="member-name-link">last</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EngineHandlerContext.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandlerContext</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#lastContext()" class="member-name-link">lastContext</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#remove(java.lang.String)" class="member-name-link">remove</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Removes the first handler that is found in the pipeline that matches the given name.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#remove(org.apache.qpid.protonj2.engine.EngineHandler)" class="member-name-link">remove</a><wbr>(<a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a>&nbsp;handler)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Removes the given <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> from the pipeline if present.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#removeFirst()" class="member-name-link">removeFirst</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Removes the first <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#removeLast()" class="member-name-link">removeLast</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Removes the last <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline.</div>
</div>
</div>
</div>
</div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="engine()">
<h3>engine</h3>
<div class="member-signature"><span class="return-type"><a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine">Engine</a></span>&nbsp;<span class="element-name">engine</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the <a href="Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> that this pipeline is linked to.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addFirst(java.lang.String,org.apache.qpid.protonj2.engine.EngineHandler)">
<h3>addFirst</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">addFirst</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name,
 <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a>&nbsp;handler)</span></div>
<div class="block">Adds the given handler to the front of the pipeline with the given name stored for
 later lookup or remove operations.  It is not mandatory that each handler have unique
 names although if handlers do share a name the <a href="#remove(java.lang.String)"><code>remove(String)</code></a>
 method will only remove them one at a time starting from the first in the pipeline.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>name</code> - The name to assign to the handler</dd>
<dd><code>handler</code> - The <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> to add into the pipeline.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - if name is null or empty or the handler is null</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addLast(java.lang.String,org.apache.qpid.protonj2.engine.EngineHandler)">
<h3>addLast</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">addLast</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name,
 <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a>&nbsp;handler)</span></div>
<div class="block">Adds the given handler to the end of the pipeline with the given name stored for
 later lookup or remove operations.  It is not mandatory that each handler have unique
 names although if handlers do share a name the <a href="#remove(java.lang.String)"><code>remove(String)</code></a>
 method will only remove them one at a time starting from the first in the pipeline.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>name</code> - The name to assign to the handler</dd>
<dd><code>handler</code> - The <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> to add into the pipeline.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class or interface in java.lang" class="external-link">IllegalArgumentException</a></code> - if name is null or empty or the handler is null</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="removeFirst()">
<h3>removeFirst</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">removeFirst</span>()</div>
<div class="block">Removes the first <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="removeLast()">
<h3>removeLast</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">removeLast</span>()</div>
<div class="block">Removes the last <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="remove(java.lang.String)">
<h3>remove</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">remove</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</span></div>
<div class="block">Removes the first handler that is found in the pipeline that matches the given name.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>name</code> - The name to search for in the pipeline moving from first to last.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="remove(org.apache.qpid.protonj2.engine.EngineHandler)">
<h3>remove</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">remove</span><wbr><span class="parameters">(<a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a>&nbsp;handler)</span></div>
<div class="block">Removes the given <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> from the pipeline if present.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>handler</code> - The handler instance to remove if contained in the pipeline.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="find(java.lang.String)">
<h3>find</h3>
<div class="member-signature"><span class="return-type"><a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a></span>&nbsp;<span class="element-name">find</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a>&nbsp;name)</span></div>
<div class="block">Finds and returns first handler that is found in the pipeline that matches the given name.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>name</code> - The name to search for in the pipeline moving from first to last.</dd>
<dt>Returns:</dt>
<dd>the <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> that matches the given name or null if none in the pipeline.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="first()">
<h3>first</h3>
<div class="member-signature"><span class="return-type"><a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a></span>&nbsp;<span class="element-name">first</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the first <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline or null if empty.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="last()">
<h3>last</h3>
<div class="member-signature"><span class="return-type"><a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandler</a></span>&nbsp;<span class="element-name">last</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the last <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline or null if empty.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="firstContext()">
<h3>firstContext</h3>
<div class="member-signature"><span class="return-type"><a href="EngineHandlerContext.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandlerContext</a></span>&nbsp;<span class="element-name">firstContext</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the first <a href="EngineHandlerContext.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandlerContext</code></a> in the pipeline or null if empty.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="lastContext()">
<h3>lastContext</h3>
<div class="member-signature"><span class="return-type"><a href="EngineHandlerContext.html" title="interface in org.apache.qpid.protonj2.engine">EngineHandlerContext</a></span>&nbsp;<span class="element-name">lastContext</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the last <a href="EngineHandlerContext.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandlerContext</code></a> in the pipeline or null if empty.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fireEngineStarting()">
<h3>fireEngineStarting</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">fireEngineStarting</span>()</div>
<div class="block">Fires an engine starting event to each handler in the pipeline.  Should be used
 by the engine implementation to signal its handlers that they should initialize.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fireEngineStateChanged()">
<h3>fireEngineStateChanged</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">fireEngineStateChanged</span>()</div>
<div class="block">Fires an engine state changed event to each handler in the pipeline.  Should be used
 by the engine implementation to signal its handlers that they should respond to the new
 engine state, e.g. the engine failed or was shutdown.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fireRead(org.apache.qpid.protonj2.buffer.ProtonBuffer)">
<h3>fireRead</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">fireRead</span><wbr><span class="parameters">(<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;input)</span></div>
<div class="block">Fires a read event consisting of the given <a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> into the pipeline starting
 from the last <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the incoming
 work is fully processed.  If the read events reaches the head of the pipeline and is not handled
 by any handler an error is thrown and the engine should enter the failed state.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>input</code> - The <a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> to inject into the engine pipeline.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fireRead(org.apache.qpid.protonj2.engine.HeaderEnvelope)">
<h3>fireRead</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">fireRead</span><wbr><span class="parameters">(<a href="HeaderEnvelope.html" title="class in org.apache.qpid.protonj2.engine">HeaderEnvelope</a>&nbsp;header)</span></div>
<div class="block">Fires a read event consisting of the given <a href="HeaderEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>HeaderEnvelope</code></a> into the pipeline starting
 from the last <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the incoming
 work is fully processed.  If the read events reaches the head of the pipeline and is not handled
 by any handler an error is thrown and the engine should enter the failed state.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>header</code> - The <a href="HeaderEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>HeaderEnvelope</code></a> to inject into the engine pipeline.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fireRead(org.apache.qpid.protonj2.engine.SASLEnvelope)">
<h3>fireRead</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">fireRead</span><wbr><span class="parameters">(<a href="SASLEnvelope.html" title="class in org.apache.qpid.protonj2.engine">SASLEnvelope</a>&nbsp;envelope)</span></div>
<div class="block">Fires a read event consisting of the given <a href="SASLEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>SASLEnvelope</code></a> into the pipeline starting
 from the last <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the incoming
 work is fully processed.  If the read events reaches the head of the pipeline and is not handled
 by any handler an error is thrown and the engine should enter the failed state.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>envelope</code> - The <a href="SASLEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>SASLEnvelope</code></a> to inject into the engine pipeline.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fireRead(org.apache.qpid.protonj2.engine.IncomingAMQPEnvelope)">
<h3>fireRead</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">fireRead</span><wbr><span class="parameters">(<a href="IncomingAMQPEnvelope.html" title="class in org.apache.qpid.protonj2.engine">IncomingAMQPEnvelope</a>&nbsp;envelope)</span></div>
<div class="block">Fires a read event consisting of the given <a href="IncomingAMQPEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>IncomingAMQPEnvelope</code></a> into the pipeline starting
 from the last <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the incoming
 work is fully processed.  If the read events reaches the head of the pipeline and is not handled
 by any handler an error is thrown and the engine should enter the failed state.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>envelope</code> - The <a href="IncomingAMQPEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>IncomingAMQPEnvelope</code></a> to inject into the engine pipeline.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fireWrite(org.apache.qpid.protonj2.engine.HeaderEnvelope)">
<h3>fireWrite</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">fireWrite</span><wbr><span class="parameters">(<a href="HeaderEnvelope.html" title="class in org.apache.qpid.protonj2.engine">HeaderEnvelope</a>&nbsp;envelope)</span></div>
<div class="block">Fires a write event consisting of the given <a href="HeaderEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>HeaderEnvelope</code></a> into the pipeline starting
 from the first <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the outgoing
 work is fully processed.  If the write events reaches the tail of the pipeline and is not handled
 by any handler an error is thrown and the engine should enter the failed state.

 It is expected that after the fire write method returns the given <a href="HeaderEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>HeaderEnvelope</code></a> will have been
 written or if held for later the object must be copied.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>envelope</code> - The <a href="HeaderEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>HeaderEnvelope</code></a> to inject into the engine pipeline.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fireWrite(org.apache.qpid.protonj2.engine.OutgoingAMQPEnvelope)">
<h3>fireWrite</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">fireWrite</span><wbr><span class="parameters">(<a href="OutgoingAMQPEnvelope.html" title="class in org.apache.qpid.protonj2.engine">OutgoingAMQPEnvelope</a>&nbsp;envelope)</span></div>
<div class="block">Fires a write event consisting of the given <a href="OutgoingAMQPEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>OutgoingAMQPEnvelope</code></a> into the pipeline starting
 from the first <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the outgoing
 work is fully processed.  If the write events reaches the tail of the pipeline and is not handled
 by any handler an error is thrown and the engine should enter the failed state.

 It is expected that after the fire write method returns the given <a href="OutgoingAMQPEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>OutgoingAMQPEnvelope</code></a> will have
 been written or if held for later the object must be copied.

 When the payload given exceeds the maximum allowed frame size when encoded into an outbound frame the
 encoding handler should either throw an error in the case that the performative being written cannot truncate
 its payload or should invoke the payload to large handler of the envelope before re-encoding the outbound
 performative and truncating the payload.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>envelope</code> - The <a href="OutgoingAMQPEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>OutgoingAMQPEnvelope</code></a> to inject into the engine pipeline.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fireWrite(org.apache.qpid.protonj2.engine.SASLEnvelope)">
<h3>fireWrite</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">fireWrite</span><wbr><span class="parameters">(<a href="SASLEnvelope.html" title="class in org.apache.qpid.protonj2.engine">SASLEnvelope</a>&nbsp;envelope)</span></div>
<div class="block">Fires a write event consisting of the given <a href="SASLEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>SASLEnvelope</code></a> into the pipeline starting
 from the first <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the outgoing
 work is fully processed.  If the write events reaches the tail of the pipeline and is not handled
 by any handler an error is thrown and the engine should enter the failed state.

 It is expected that after the fire write method returns the given <a href="SASLEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>SASLEnvelope</code></a> will have been
 written or if held for later the object must be copied.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>envelope</code> - The <a href="SASLEnvelope.html" title="class in org.apache.qpid.protonj2.engine"><code>SASLEnvelope</code></a> to inject into the engine pipeline.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fireWrite(org.apache.qpid.protonj2.buffer.ProtonBuffer,java.lang.Runnable)">
<h3>fireWrite</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">fireWrite</span><wbr><span class="parameters">(<a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;buffer,
 <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Runnable.html" title="class or interface in java.lang" class="external-link">Runnable</a>&nbsp;ioComplete)</span></div>
<div class="block">Fires a write event consisting of the given <a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> into the pipeline starting
 from the first <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline and moving through each until the outgoing
 work is fully processed.  If the write events reaches the tail of the pipeline and is not handled
 by any handler an error is thrown and the engine should enter the failed state.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>buffer</code> - The <a href="../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer"><code>ProtonBuffer</code></a> to inject into the engine pipeline.</dd>
<dd><code>ioComplete</code> - An optional callback that should be signaled when the underlying transport complete the I/O write</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="fireFailed(org.apache.qpid.protonj2.engine.exceptions.EngineFailedException)">
<h3>fireFailed</h3>
<div class="member-signature"><span class="return-type"><a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine">EnginePipeline</a></span>&nbsp;<span class="element-name">fireFailed</span><wbr><span class="parameters">(<a href="exceptions/EngineFailedException.html" title="class in org.apache.qpid.protonj2.engine.exceptions">EngineFailedException</a>&nbsp;failure)</span></div>
<div class="block">Fires an engine failed event into each <a href="EngineHandler.html" title="interface in org.apache.qpid.protonj2.engine"><code>EngineHandler</code></a> in the pipeline indicating
 that the engine is now failed and should not accept or produce new work.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>failure</code> - The cause of the engine failure.</dd>
<dt>Returns:</dt>
<dd>this <a href="EnginePipeline.html" title="interface in org.apache.qpid.protonj2.engine"><code>EnginePipeline</code></a>.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2023 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
