blob: a5969098d095f4eab66a4d5239cbcf5fc93bc931 [file] [log] [blame]
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) -->
<title>ProtonIncomingDelivery (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.impl, class: ProtonIncomingDelivery">
<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/ProtonIncomingDelivery.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><a href="#constructor-summary">Constr</a>&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><a href="#constructor-detail">Constr</a>&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.impl</a></div>
<h1 title="Class ProtonIncomingDelivery" class="title">Class ProtonIncomingDelivery</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">org.apache.qpid.protonj2.engine.impl.ProtonIncomingDelivery</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">ProtonIncomingDelivery</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>
implements <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></span></div>
<div class="block">Proton Incoming Delivery implementation</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(org.apache.qpid.protonj2.engine.impl.ProtonReceiver,long,org.apache.qpid.protonj2.types.DeliveryTag)" class="member-name-link">ProtonIncomingDelivery</a><wbr>(<a href="ProtonReceiver.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonReceiver</a>&nbsp;link,
long&nbsp;deliveryId,
<a href="../../types/DeliveryTag.html" title="interface in org.apache.qpid.protonj2.types">DeliveryTag</a>&nbsp;deliveryTag)</code></div>
<div class="col-last even-row-color">&nbsp;</div>
</div>
</section>
</li>
<!-- ========== 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-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete 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-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#available()" class="member-name-link">available</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the number of bytes currently available for reading form this delivery, which may not be complete yet.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#claimAvailableBytes()" class="member-name-link">claimAvailableBytes</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Marks all available bytes as being claimed by the caller meaning that available byte count value can
be returned to the session which can expand the session incoming window to allow more bytes to be
sent from the remote peer.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#deliveryAbortedHandler(org.apache.qpid.protonj2.engine.EventHandler)" class="member-name-link">deliveryAbortedHandler</a><wbr>(<a href="../EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a>&gt;&nbsp;handler)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Handler for aborted deliveries that is called if this delivery is aborted by the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a>.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#deliveryReadHandler(org.apache.qpid.protonj2.engine.EventHandler)" class="member-name-link">deliveryReadHandler</a><wbr>(<a href="../EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a>&gt;&nbsp;handler)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Handler for incoming deliveries that is called for each incoming <a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frame that comprises
either one complete delivery or a chunk of a split framed <a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a>.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#deliveryStateUpdatedHandler(org.apache.qpid.protonj2.engine.EventHandler)" class="member-name-link">deliveryStateUpdatedHandler</a><wbr>(<a href="../EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a>&gt;&nbsp;handler)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Handler for updates to the remote state of incoming deliveries that have previously been received.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#disposition(org.apache.qpid.protonj2.types.transport.DeliveryState)" class="member-name-link">disposition</a><wbr>(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">updates the state of the delivery</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#disposition(org.apache.qpid.protonj2.types.transport.DeliveryState,boolean)" class="member-name-link">disposition</a><wbr>(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state,
boolean&nbsp;settle)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Update the delivery with the given disposition if not locally settled
and optionally settles the delivery if not already settled.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="ProtonAttachments.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonAttachments</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getAttachments()" class="member-name-link">getAttachments</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getDefaultDeliveryState()" class="member-name-link">getDefaultDeliveryState</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="ProtonReceiver.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonReceiver</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLink()" class="member-name-link">getLink</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>&lt;T&gt;&nbsp;T</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLinkedResource()" class="member-name-link">getLinkedResource</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>&lt;T&gt;&nbsp;T</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLinkedResource(java.lang.Class)" class="member-name-link">getLinkedResource</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;T&gt;&nbsp;typeClass)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets the linked resource (if set) and returns it using the type information
provided to cast the returned value.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getMessageFormat()" class="member-name-link">getMessageFormat</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Gets the message-format for this Delivery, representing the 32bit value using an int.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getRemoteState()" class="member-name-link">getRemoteState</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getState()" class="member-name-link">getState</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../types/DeliveryTag.html" title="interface in org.apache.qpid.protonj2.types">DeliveryTag</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTag()" class="member-name-link">getTag</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getTransferCount()" class="member-name-link">getTransferCount</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the total number of transfer frames that have occurred for the given <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a>.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isAborted()" class="member-name-link">isAborted</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isPartial()" class="member-name-link">isPartial</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Check for whether the delivery is still partial.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isRemotelySettled()" class="member-name-link">isRemotelySettled</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isSettled()" class="member-name-link">isSettled</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#readAll()" class="member-name-link">readAll</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the current read buffer without copying it effectively consuming all currently available
bytes from this delivery.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#readBytes(byte%5B%5D,int,int)" class="member-name-link">readBytes</a><wbr>(byte[]&nbsp;array,
int&nbsp;offset,
int&nbsp;length)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Reads bytes from this delivery and writes them into the destination array starting at the given offset and
continuing for the specified length reducing the available bytes by the value of the number of bytes written
to the target.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#readBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer)" class="member-name-link">readBytes</a><wbr>(<a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;buffer)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Reads bytes from this delivery and writes them into the destination ProtonBuffer reducing the available
bytes by the value of the number of bytes written to the target.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setDefaultDeliveryState(org.apache.qpid.protonj2.types.transport.DeliveryState)" class="member-name-link">setDefaultDeliveryState</a><wbr>(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Configures a default DeliveryState to be used if a received delivery is settled/freed
without any disposition state having been previously applied.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setLinkedResource(java.lang.Object)" class="member-name-link">setLinkedResource</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>&nbsp;resource)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Links a given resource to this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a>.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#settle()" class="member-name-link">settle</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Settles this delivery locally, transmitting a <a href="../../types/transport/Disposition.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Disposition</code></a> frame to the remote
if the remote has not already settled the delivery.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><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></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toString()" class="member-name-link">toString</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;(org.apache.qpid.protonj2.engine.impl.ProtonReceiver,long,org.apache.qpid.protonj2.types.DeliveryTag)">
<h3>ProtonIncomingDelivery</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">ProtonIncomingDelivery</span><wbr><span class="parameters">(<a href="ProtonReceiver.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonReceiver</a>&nbsp;link,
long&nbsp;deliveryId,
<a href="../../types/DeliveryTag.html" title="interface in org.apache.qpid.protonj2.types">DeliveryTag</a>&nbsp;deliveryTag)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>link</code> - The link that this delivery is associated with</dd>
<dd><code>deliveryId</code> - The Delivery Id that is assigned to this delivery.</dd>
<dd><code>deliveryTag</code> - The delivery tag assigned to this delivery</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getLink()">
<h3>getLink</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="ProtonReceiver.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonReceiver</a></span>&nbsp;<span class="element-name">getLink</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#getLink()">getLink</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>the link that this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> is bound to.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getAttachments()">
<h3>getAttachments</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="ProtonAttachments.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonAttachments</a></span>&nbsp;<span class="element-name">getAttachments</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#getAttachments()">getAttachments</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>the <a href="../Attachments.html" title="interface in org.apache.qpid.protonj2.engine"><code>Attachments</code></a> instance that is associated with this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setLinkedResource(java.lang.Object)">
<h3>setLinkedResource</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></span>&nbsp;<span class="element-name">setLinkedResource</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>&nbsp;resource)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#setLinkedResource(java.lang.Object)">IncomingDelivery</a></code></span></div>
<div class="block">Links a given resource to this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a>.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#setLinkedResource(java.lang.Object)">setLinkedResource</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Parameters:</dt>
<dd><code>resource</code> - The resource to link to this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a>.</dd>
<dt>Returns:</dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getLinkedResource()">
<h3>getLinkedResource</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="type-parameters">&lt;T&gt;</span>&nbsp;<span class="return-type">T</span>&nbsp;<span class="element-name">getLinkedResource</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#getLinkedResource()">getLinkedResource</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Type Parameters:</dt>
<dd><code>T</code> - The type that the linked resource should be cast to on return.</dd>
<dt>Returns:</dt>
<dd>the user set linked resource for this <a href="../Endpoint.html" title="interface in org.apache.qpid.protonj2.engine"><code>Endpoint</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getLinkedResource(java.lang.Class)">
<h3>getLinkedResource</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="type-parameters">&lt;T&gt;</span>&nbsp;<span class="return-type">T</span>&nbsp;<span class="element-name">getLinkedResource</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html" title="class or interface in java.lang" class="external-link">Class</a>&lt;T&gt;&nbsp;typeClass)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#getLinkedResource(java.lang.Class)">IncomingDelivery</a></code></span></div>
<div class="block">Gets the linked resource (if set) and returns it using the type information
provided to cast the returned value.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#getLinkedResource(java.lang.Class)">getLinkedResource</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Type Parameters:</dt>
<dd><code>T</code> - The type to cast the linked resource to if one is set.</dd>
<dt>Parameters:</dt>
<dd><code>typeClass</code> - the type's Class which is used for casting the returned value.</dd>
<dt>Returns:</dt>
<dd>the user set linked resource for this Context instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getTag()">
<h3>getTag</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../../types/DeliveryTag.html" title="interface in org.apache.qpid.protonj2.types">DeliveryTag</a></span>&nbsp;<span class="element-name">getTag</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#getTag()">getTag</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>the <a href="../../types/DeliveryTag.html" title="interface in org.apache.qpid.protonj2.types"><code>DeliveryTag</code></a> assigned to this Delivery.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getState()">
<h3>getState</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a></span>&nbsp;<span class="element-name">getState</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#getState()">getState</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>the <a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport"><code>DeliveryState</code></a> at the local side of this Delivery.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRemoteState()">
<h3>getRemoteState</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a></span>&nbsp;<span class="element-name">getRemoteState</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#getRemoteState()">getRemoteState</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>the <a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport"><code>DeliveryState</code></a> at the remote side of this Delivery.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getMessageFormat()">
<h3>getMessageFormat</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getMessageFormat</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#getMessageFormat()">IncomingDelivery</a></code></span></div>
<div class="block">Gets the message-format for this Delivery, representing the 32bit value using an int.
<p>
The default value is 0 as per the message format defined in the core AMQP 1.0 specification.
<p>
See the following for more details:<br>
<a href="http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-transport-v1.0-os.html#type-transfer">
http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-transport-v1.0-os.html#type-transfer</a><br>
<a href="http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-transport-v1.0-os.html#type-message-format">
http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-transport-v1.0-os.html#type-message-format</a><br>
<a href="http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-messaging-v1.0-os.html#section-message-format">
http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-messaging-v1.0-os.html#section-message-format</a><br>
<a href="http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-messaging-v1.0-os.html#definition-MESSAGE-FORMAT">
http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-messaging-v1.0-os.html#definition-MESSAGE-FORMAT</a><br></div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#getMessageFormat()">getMessageFormat</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>the message-format for this Delivery.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isPartial()">
<h3>isPartial</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isPartial</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#isPartial()">IncomingDelivery</a></code></span></div>
<div class="block">Check for whether the delivery is still partial.
<p>
For a receiving Delivery, this means the delivery does not hold
a complete message payload as all the content hasn't been
received yet. Note that an <a href="../IncomingDelivery.html#isAborted()"><code>aborted</code></a> delivery
will also be considered partial and the full payload won't
be received.
<p>
For a sending Delivery, this means that the application has not marked
the delivery as complete yet.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#isPartial()">isPartial</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>true if the delivery is partial</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../IncomingDelivery.html#isAborted()"><code>IncomingDelivery.isAborted()</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isAborted()">
<h3>isAborted</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isAborted</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#isAborted()">isAborted</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>true if the delivery has been aborted.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isSettled()">
<h3>isSettled</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isSettled</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#isSettled()">isSettled</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>true if the delivery has been settled locally.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isRemotelySettled()">
<h3>isRemotelySettled</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">isRemotelySettled</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#isRemotelySettled()">isRemotelySettled</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>true if the delivery has been settled by the remote.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="setDefaultDeliveryState(org.apache.qpid.protonj2.types.transport.DeliveryState)">
<h3>setDefaultDeliveryState</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></span>&nbsp;<span class="element-name">setDefaultDeliveryState</span><wbr><span class="parameters">(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#setDefaultDeliveryState(org.apache.qpid.protonj2.types.transport.DeliveryState)">IncomingDelivery</a></code></span></div>
<div class="block">Configures a default DeliveryState to be used if a received delivery is settled/freed
without any disposition state having been previously applied.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#setDefaultDeliveryState(org.apache.qpid.protonj2.types.transport.DeliveryState)">setDefaultDeliveryState</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Parameters:</dt>
<dd><code>state</code> - the default delivery state</dd>
<dt>Returns:</dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDefaultDeliveryState()">
<h3>getDefaultDeliveryState</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a></span>&nbsp;<span class="element-name">getDefaultDeliveryState</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#getDefaultDeliveryState()">getDefaultDeliveryState</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>the default delivery state for this delivery</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="disposition(org.apache.qpid.protonj2.types.transport.DeliveryState)">
<h3>disposition</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></span>&nbsp;<span class="element-name">disposition</span><wbr><span class="parameters">(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#disposition(org.apache.qpid.protonj2.types.transport.DeliveryState)">IncomingDelivery</a></code></span></div>
<div class="block">updates the state of the delivery</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#disposition(org.apache.qpid.protonj2.types.transport.DeliveryState)">disposition</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Parameters:</dt>
<dd><code>state</code> - the new delivery state</dd>
<dt>Returns:</dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="disposition(org.apache.qpid.protonj2.types.transport.DeliveryState,boolean)">
<h3>disposition</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></span>&nbsp;<span class="element-name">disposition</span><wbr><span class="parameters">(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state,
boolean&nbsp;settle)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#disposition(org.apache.qpid.protonj2.types.transport.DeliveryState,boolean)">IncomingDelivery</a></code></span></div>
<div class="block">Update the delivery with the given disposition if not locally settled
and optionally settles the delivery if not already settled.
<p>
Applies the given delivery state and local settlement value to this delivery
writing a new <a href="../../types/transport/Disposition.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Disposition</code></a> frame if the remote has not already settled
the delivery. Once locally settled no additional updates to the local
<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport"><code>DeliveryState</code></a> can be applied and if attempted an <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/IllegalStateException.html" title="class or interface in java.lang" class="external-link"><code>IllegalStateException</code></a>
will be thrown to indicate this is not possible.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#disposition(org.apache.qpid.protonj2.types.transport.DeliveryState,boolean)">disposition</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Parameters:</dt>
<dd><code>state</code> - the new delivery state</dd>
<dd><code>settle</code> - if true the delivery is settled.</dd>
<dt>Returns:</dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="settle()">
<h3>settle</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></span>&nbsp;<span class="element-name">settle</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#settle()">IncomingDelivery</a></code></span></div>
<div class="block">Settles this delivery locally, transmitting a <a href="../../types/transport/Disposition.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Disposition</code></a> frame to the remote
if the remote has not already settled the delivery. Once locally settled the delivery
will not accept any additional updates to the <a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport"><code>DeliveryState</code></a> via one of the
<a href="../IncomingDelivery.html#disposition(org.apache.qpid.protonj2.types.transport.DeliveryState)"><code>IncomingDelivery.disposition(DeliveryState)</code></a> or <a href="../IncomingDelivery.html#disposition(org.apache.qpid.protonj2.types.transport.DeliveryState,boolean)"><code>IncomingDelivery.disposition(DeliveryState, boolean)</code></a>
methods.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#settle()">settle</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="available()">
<h3>available</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">available</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#available()">IncomingDelivery</a></code></span></div>
<div class="block">Returns the number of bytes currently available for reading form this delivery, which may not be complete yet.
<p>
Note that this value will change as bytes are received, and is in general not equal to the total length of
a delivery, except the point where <a href="../IncomingDelivery.html#isPartial()"><code>IncomingDelivery.isPartial()</code></a> returns false and no content has yet been received by
the application.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#available()">available</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>the number of bytes currently available to read from this delivery.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="readAll()">
<h3>readAll</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></span>&nbsp;<span class="element-name">readAll</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#readAll()">IncomingDelivery</a></code></span></div>
<div class="block">Returns the current read buffer without copying it effectively consuming all currently available
bytes from this delivery. If no data is available then this method returns <code>null</code>.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#readAll()">readAll</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>the currently available read bytes for this delivery.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="readBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer)">
<h3>readBytes</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></span>&nbsp;<span class="element-name">readBytes</span><wbr><span class="parameters">(<a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;buffer)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#readBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer)">IncomingDelivery</a></code></span></div>
<div class="block">Reads bytes from this delivery and writes them into the destination ProtonBuffer reducing the available
bytes by the value of the number of bytes written to the target. The number of bytes written will be the
equal to the writable bytes of the target buffer. The write index of the target buffer will be incremented
by the number of bytes written into it.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#readBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer)">readBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Parameters:</dt>
<dd><code>buffer</code> - The target buffer that will be written into.</dd>
<dt>Returns:</dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="readBytes(byte[],int,int)">
<h3>readBytes</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></span>&nbsp;<span class="element-name">readBytes</span><wbr><span class="parameters">(byte[]&nbsp;array,
int&nbsp;offset,
int&nbsp;length)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#readBytes(byte%5B%5D,int,int)">IncomingDelivery</a></code></span></div>
<div class="block">Reads bytes from this delivery and writes them into the destination array starting at the given offset and
continuing for the specified length reducing the available bytes by the value of the number of bytes written
to the target.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#readBytes(byte%5B%5D,int,int)">readBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Parameters:</dt>
<dd><code>array</code> - The target buffer that will be written into.</dd>
<dd><code>offset</code> - The offset into the given array to begin writing.</dd>
<dd><code>length</code> - The number of bytes to write to the given array.</dd>
<dt>Returns:</dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="claimAvailableBytes()">
<h3>claimAvailableBytes</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></span>&nbsp;<span class="element-name">claimAvailableBytes</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#claimAvailableBytes()">IncomingDelivery</a></code></span></div>
<div class="block">Marks all available bytes as being claimed by the caller meaning that available byte count value can
be returned to the session which can expand the session incoming window to allow more bytes to be
sent from the remote peer.
<p>
This method is useful in the case where the <a href="../Session.html" title="interface in org.apache.qpid.protonj2.engine"><code>Session</code></a> has been configured with a small incoming
capacity and the receiver needs to expand the session window in order to read the entire contents of
a delivery whose payload exceeds the configured session capacity. The <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a>
implementation will track the amount of claimed bytes and ensure that it never releases back more
bytes to the <a href="../Session.html" title="interface in org.apache.qpid.protonj2.engine"><code>Session</code></a> than has actually been received as a whole which allows this method
to be called with each incoming <a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frame of a large split framed delivery.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#claimAvailableBytes()">claimAvailableBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="deliveryReadHandler(org.apache.qpid.protonj2.engine.EventHandler)">
<h3>deliveryReadHandler</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></span>&nbsp;<span class="element-name">deliveryReadHandler</span><wbr><span class="parameters">(<a href="../EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a>&gt;&nbsp;handler)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#deliveryReadHandler(org.apache.qpid.protonj2.engine.EventHandler)">IncomingDelivery</a></code></span></div>
<div class="block">Handler for incoming deliveries that is called for each incoming <a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frame that comprises
either one complete delivery or a chunk of a split framed <a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a>. The handler should check
that the delivery being read is partial or not and act accordingly, as partial deliveries expect additional
updates as more frames comprising that <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> arrive or the remote aborts the transfer.
<p>
This handler is useful in cases where an incoming delivery is split across many incoming <a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a>
frames either due to a large size or a small max frame size setting and the processing is handed off to some
other resource other than the <a href="../Receiver.html" title="interface in org.apache.qpid.protonj2.engine"><code>Receiver</code></a> that original handling the first transfer frame. If the initial
<a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> carries the entire delivery payload then this event handler will never be called. Once set
this event handler receiver all updates of incoming delivery <a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frames which would otherwise have
been sent to the <a href="../Receiver.html#deliveryReadHandler(org.apache.qpid.protonj2.engine.EventHandler)"><code>Receiver.deliveryReadHandler(EventHandler)</code></a> instance.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#deliveryReadHandler(org.apache.qpid.protonj2.engine.EventHandler)">deliveryReadHandler</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Parameters:</dt>
<dd><code>handler</code> - The handler that will be invoked when <a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frames arrive on this receiver link.</dd>
<dt>Returns:</dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="deliveryAbortedHandler(org.apache.qpid.protonj2.engine.EventHandler)">
<h3>deliveryAbortedHandler</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></span>&nbsp;<span class="element-name">deliveryAbortedHandler</span><wbr><span class="parameters">(<a href="../EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a>&gt;&nbsp;handler)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#deliveryAbortedHandler(org.apache.qpid.protonj2.engine.EventHandler)">IncomingDelivery</a></code></span></div>
<div class="block">Handler for aborted deliveries that is called if this delivery is aborted by the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a>.
<p>
This handler is an optional convenience handler that supplements the standard
<a href="../IncomingDelivery.html#deliveryReadHandler(org.apache.qpid.protonj2.engine.EventHandler)"><code>IncomingDelivery.deliveryReadHandler(EventHandler)</code></a> in cases where the users wishes to break out the
processing of inbound delivery data from abort processing. If this handler is not set the
<a href="../Receiver.html" title="interface in org.apache.qpid.protonj2.engine"><code>Receiver</code></a> will call the registered <a href="../IncomingDelivery.html#deliveryAbortedHandler(org.apache.qpid.protonj2.engine.EventHandler)"><code>IncomingDelivery.deliveryAbortedHandler(EventHandler)</code></a>
if one is set.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#deliveryAbortedHandler(org.apache.qpid.protonj2.engine.EventHandler)">deliveryAbortedHandler</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Parameters:</dt>
<dd><code>handler</code> - The handler that will be invoked when <a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frames arrive on this receiver link.</dd>
<dt>Returns:</dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="deliveryStateUpdatedHandler(org.apache.qpid.protonj2.engine.EventHandler)">
<h3>deliveryStateUpdatedHandler</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></span>&nbsp;<span class="element-name">deliveryStateUpdatedHandler</span><wbr><span class="parameters">(<a href="../EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a>&lt;<a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a>&gt;&nbsp;handler)</span></div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#deliveryStateUpdatedHandler(org.apache.qpid.protonj2.engine.EventHandler)">IncomingDelivery</a></code></span></div>
<div class="block">Handler for updates to the remote state of incoming deliveries that have previously been received.
<p>
Remote state updates for an <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> can happen when the remote settles a complete
<a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> or otherwise modifies the delivery outcome and the user needs to act on those
changes such as a spontaneous update to the <a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport"><code>DeliveryState</code></a>. If the initial <a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> of
an incoming delivery already indicates settlement then this handler will never be called.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#deliveryStateUpdatedHandler(org.apache.qpid.protonj2.engine.EventHandler)">deliveryStateUpdatedHandler</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Parameters:</dt>
<dd><code>handler</code> - The handler that will be invoked when a new remote state update for an <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> arrives on this link.</dd>
<dt>Returns:</dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getTransferCount()">
<h3>getTransferCount</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getTransferCount</span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../IncomingDelivery.html#getTransferCount()">IncomingDelivery</a></code></span></div>
<div class="block">Returns the total number of transfer frames that have occurred for the given <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a>.</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../IncomingDelivery.html#getTransferCount()">getTransferCount</a></code>&nbsp;in interface&nbsp;<code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></dd>
<dt>Returns:</dt>
<dd>the number of <a href="../../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frames that this <a href="../OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>OutgoingDelivery</code></a> has initiated.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="toString()">
<h3>toString</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><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></span>&nbsp;<span class="element-name">toString</span>()</div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></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>