blob: 1300c30eb3475f330213b399da0cca4e01fc2413 [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>ProtonIncomingDelivery (Qpid ProtonJ2 Parent 1.0.0-M9 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ProtonIncomingDelivery (Qpid ProtonJ2 Parent 1.0.0-M9 API)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ProtonIncomingDelivery.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.qpid.protonj2.engine.impl</a></div>
<h2 title="Class ProtonIncomingDelivery" class="title">Class ProtonIncomingDelivery</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.qpid.protonj2.engine.impl.ProtonIncomingDelivery</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<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>
<pre>public class <span class="typeNameLabel">ProtonIncomingDelivery</span>
extends <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>
implements <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></pre>
<div class="block">Proton Incoming Delivery implementation</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(org.apache.qpid.protonj2.engine.impl.ProtonReceiver,long,org.apache.qpid.protonj2.types.DeliveryTag)">ProtonIncomingDelivery</a></span>&#8203;(<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></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#available()">available</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the number of bytes currently available for reading form this delivery, which may not be complete yet.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#claimAvailableBytes()">claimAvailableBytes</a></span>()</code></th>
<td class="colLast">
<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>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deliveryAbortedHandler(org.apache.qpid.protonj2.engine.EventHandler)">deliveryAbortedHandler</a></span>&#8203;(<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></th>
<td class="colLast">
<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>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deliveryReadHandler(org.apache.qpid.protonj2.engine.EventHandler)">deliveryReadHandler</a></span>&#8203;(<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></th>
<td class="colLast">
<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>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deliveryStateUpdatedHandler(org.apache.qpid.protonj2.engine.EventHandler)">deliveryStateUpdatedHandler</a></span>&#8203;(<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></th>
<td class="colLast">
<div class="block">Handler for updates to the remote state of incoming deliveries that have previously been received.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#disposition(org.apache.qpid.protonj2.types.transport.DeliveryState)">disposition</a></span>&#8203;(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state)</code></th>
<td class="colLast">
<div class="block">updates the state of the delivery</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#disposition(org.apache.qpid.protonj2.types.transport.DeliveryState,boolean)">disposition</a></span>&#8203;(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state,
boolean&nbsp;settle)</code></th>
<td class="colLast">
<div class="block">Update the delivery with the given disposition if not locally settled
and optionally settles the delivery if not already settled.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="ProtonAttachments.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonAttachments</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAttachments()">getAttachments</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDefaultDeliveryState()">getDefaultDeliveryState</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="ProtonReceiver.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonReceiver</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLink()">getLink</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLinkedResource()">getLinkedResource</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLinkedResource(java.lang.Class)">getLinkedResource</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;T&gt;&nbsp;typeClass)</code></th>
<td class="colLast">
<div class="block">Gets the linked resource (if set) and returns it using the type information
provided to cast the returned value.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMessageFormat()">getMessageFormat</a></span>()</code></th>
<td class="colLast">
<div class="block">Gets the message-format for this Delivery, representing the 32bit value using an int.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRemoteState()">getRemoteState</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getState()">getState</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="../../types/DeliveryTag.html" title="interface in org.apache.qpid.protonj2.types">DeliveryTag</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTag()">getTag</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTransferCount()">getTransferCount</a></span>()</code></th>
<td class="colLast">
<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>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isAborted()">isAborted</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPartial()">isPartial</a></span>()</code></th>
<td class="colLast">
<div class="block">Check for whether the delivery is still partial.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isRemotelySettled()">isRemotelySettled</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isSettled()">isSettled</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#readAll()">readAll</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the current read buffer without copying it effectively consuming all currently available
bytes from this delivery.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#readBytes(byte%5B%5D,int,int)">readBytes</a></span>&#8203;(byte[]&nbsp;array,
int&nbsp;offset,
int&nbsp;length)</code></th>
<td class="colLast">
<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>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#readBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer)">readBytes</a></span>&#8203;(<a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;buffer)</code></th>
<td class="colLast">
<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>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDefaultDeliveryState(org.apache.qpid.protonj2.types.transport.DeliveryState)">setDefaultDeliveryState</a></span>&#8203;(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state)</code></th>
<td class="colLast">
<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>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLinkedResource(java.lang.Object)">setLinkedResource</a></span>&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;resource)</code></th>
<td class="colLast">
<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>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code><a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#settle()">settle</a></span>()</code></th>
<td class="colLast">
<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>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#wait(long,int)" title="class or interface in java.lang" class="externalLink">wait</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;(org.apache.qpid.protonj2.engine.impl.ProtonReceiver,long,org.apache.qpid.protonj2.types.DeliveryTag)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ProtonIncomingDelivery</h4>
<pre>public&nbsp;ProtonIncomingDelivery&#8203;(<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)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></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>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="getLink()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLink</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonReceiver.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonReceiver</a>&nbsp;getLink()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></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>
</li>
</ul>
<a id="getAttachments()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAttachments</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonAttachments.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonAttachments</a>&nbsp;getAttachments()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></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>
</li>
</ul>
<a id="setLinkedResource(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLinkedResource</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a>&nbsp;setLinkedResource&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;resource)</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="getLinkedResource()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLinkedResource</h4>
<pre class="methodSignature">public&nbsp;&lt;T&gt;&nbsp;T&nbsp;getLinkedResource()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - The type that the linked resource should be cast to on return.</dd>
<dt><span class="returnLabel">Returns:</span></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>
</li>
</ul>
<a id="getLinkedResource(java.lang.Class)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLinkedResource</h4>
<pre class="methodSignature">public&nbsp;&lt;T&gt;&nbsp;T&nbsp;getLinkedResource&#8203;(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;T&gt;&nbsp;typeClass)</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - The type to cast the linked resource to if one is set.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>typeClass</code> - the type's Class which is used for casting the returned value.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the user set linked resource for this Context instance.</dd>
</dl>
</li>
</ul>
<a id="getTag()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTag</h4>
<pre class="methodSignature">public&nbsp;<a href="../../types/DeliveryTag.html" title="interface in org.apache.qpid.protonj2.types">DeliveryTag</a>&nbsp;getTag()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></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>
</li>
</ul>
<a id="getState()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getState</h4>
<pre class="methodSignature">public&nbsp;<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;getState()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></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>
</li>
</ul>
<a id="getRemoteState()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRemoteState</h4>
<pre class="methodSignature">public&nbsp;<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;getRemoteState()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></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>
</li>
</ul>
<a id="getMessageFormat()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMessageFormat</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getMessageFormat()</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>the message-format for this Delivery.</dd>
</dl>
</li>
</ul>
<a id="isPartial()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPartial</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isPartial()</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>true if the delivery is partial</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../IncomingDelivery.html#isAborted()"><code>IncomingDelivery.isAborted()</code></a></dd>
</dl>
</li>
</ul>
<a id="isAborted()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAborted</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isAborted()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>true if the delivery has been aborted.</dd>
</dl>
</li>
</ul>
<a id="isSettled()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isSettled</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isSettled()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>true if the delivery has been settled locally.</dd>
</dl>
</li>
</ul>
<a id="isRemotelySettled()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRemotelySettled</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isRemotelySettled()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>true if the delivery has been settled by the remote.</dd>
</dl>
</li>
</ul>
<a id="setDefaultDeliveryState(org.apache.qpid.protonj2.types.transport.DeliveryState)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDefaultDeliveryState</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a>&nbsp;setDefaultDeliveryState&#8203;(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state)</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt>
<dd><code>state</code> - the default delivery state</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="getDefaultDeliveryState()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultDeliveryState</h4>
<pre class="methodSignature">public&nbsp;<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;getDefaultDeliveryState()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>the default delivery state for this delivery</dd>
</dl>
</li>
</ul>
<a id="disposition(org.apache.qpid.protonj2.types.transport.DeliveryState)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disposition</h4>
<pre class="methodSignature">public&nbsp;<a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a>&nbsp;disposition&#8203;(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state)</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt>
<dd><code>state</code> - the new delivery state</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="disposition(org.apache.qpid.protonj2.types.transport.DeliveryState,boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disposition</h4>
<pre class="methodSignature">public&nbsp;<a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a>&nbsp;disposition&#8203;(<a href="../../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a>&nbsp;state,
boolean&nbsp;settle)</pre>
<div class="block"><span class="descfrmTypeLabel">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?is-external=true" title="class or interface in java.lang" class="externalLink"><code>IllegalStateException</code></a>
will be thrown to indicate this is not possible.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt>
<dd><code>state</code> - the new delivery state</dd>
<dd><code>settle</code> - if true the delivery is settled.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="settle()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>settle</h4>
<pre class="methodSignature">public&nbsp;<a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a>&nbsp;settle()</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="available()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>available</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;available()</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>the number of bytes currently available to read from this delivery.</dd>
</dl>
</li>
</ul>
<a id="readAll()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readAll</h4>
<pre class="methodSignature">public&nbsp;<a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;readAll()</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>the currently available read bytes for this delivery.</dd>
</dl>
</li>
</ul>
<a id="readBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readBytes</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a>&nbsp;readBytes&#8203;(<a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;buffer)</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></dt>
<dd><code>buffer</code> - The target buffer that will be written into.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="readBytes(byte[],int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readBytes</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a>&nbsp;readBytes&#8203;(byte[]&nbsp;array,
int&nbsp;offset,
int&nbsp;length)</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="claimAvailableBytes()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>claimAvailableBytes</h4>
<pre class="methodSignature">public&nbsp;<a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">IncomingDelivery</a>&nbsp;claimAvailableBytes()</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="deliveryReadHandler(org.apache.qpid.protonj2.engine.EventHandler)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deliveryReadHandler</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a>&nbsp;deliveryReadHandler&#8203;(<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)</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="deliveryAbortedHandler(org.apache.qpid.protonj2.engine.EventHandler)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deliveryAbortedHandler</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a>&nbsp;deliveryAbortedHandler&#8203;(<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)</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="deliveryStateUpdatedHandler(org.apache.qpid.protonj2.engine.EventHandler)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deliveryStateUpdatedHandler</h4>
<pre class="methodSignature">public&nbsp;<a href="ProtonIncomingDelivery.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonIncomingDelivery</a>&nbsp;deliveryStateUpdatedHandler&#8203;(<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)</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="paramLabel">Parameters:</span></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><span class="returnLabel">Returns:</span></dt>
<dd>this <a href="../IncomingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>IncomingDelivery</code></a> instance.</dd>
</dl>
</li>
</ul>
<a id="getTransferCount()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTransferCount</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getTransferCount()</pre>
<div class="block"><span class="descfrmTypeLabel">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>
<dt><span class="overrideSpecifyLabel">Specified by:</span></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><span class="returnLabel">Returns:</span></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>
</li>
</ul>
<a id="toString()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre class="methodSignature">public&nbsp;<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang" class="externalLink">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?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ProtonIncomingDelivery.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2022 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>