blob: aac22fa88538c343bcd8ec7a6b6c2c53ccbff0ad [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Proton DotNet: Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Proton DotNet
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceApache.html">Apache</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid.html">Qpid</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton.html">Proton</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine.html">Engine</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation.html">Implementation</a></li><li class="navelem"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html">ProtonOutgoingDelivery</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Outgoing delivery implementation that manges the state and payload writes for this delivery.
<a href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#details">More...</a></p>
<div class="dynheader">
Inheritance diagram for Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery:</div>
<div class="dyncontent">
<div class="center">
<img src="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.png" usemap="#Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery_map" alt=""/>
<map id="Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery_map" name="Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery_map">
<area href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html" title="Represents an outgoing delivery that is sent from a local sender to a remote receiver on an open link..." alt="Apache.Qpid.Proton.Engine.IOutgoingDelivery" shape="rect" coords="0,0,397,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a255376137a323b2de156e519f5f1530e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#a255376137a323b2de156e519f5f1530e">ProtonOutgoingDelivery</a> (<a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonSender.html">ProtonSender</a> link)</td></tr>
<tr class="memdesc:a255376137a323b2de156e519f5f1530e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates the outgoing delivery instance and assigns it to the given link. <a href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#a255376137a323b2de156e519f5f1530e">More...</a><br /></td></tr>
<tr class="separator:a255376137a323b2de156e519f5f1530e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8168ae9bf27574641fedaa52477fd10f"><td class="memItemLeft" align="right" valign="top"><a id="a8168ae9bf27574641fedaa52477fd10f"></a>
override string&#160;</td><td class="memItemRight" valign="bottom"><b>ToString</b> ()</td></tr>
<tr class="separator:a8168ae9bf27574641fedaa52477fd10f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9dc589ade7007858b262f755d5db804"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#ad9dc589ade7007858b262f755d5db804">Disposition</a> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Types_1_1Transport_1_1IDeliveryState.html">IDeliveryState</a> state)</td></tr>
<tr class="memdesc:ad9dc589ade7007858b262f755d5db804"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update the delivery with the given disposition if not locally settled. <a href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#ad9dc589ade7007858b262f755d5db804">More...</a><br /></td></tr>
<tr class="separator:ad9dc589ade7007858b262f755d5db804"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeaa34f6835f18ee3f89db5a01559a496"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#aeaa34f6835f18ee3f89db5a01559a496">Disposition</a> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Types_1_1Transport_1_1IDeliveryState.html">IDeliveryState</a> state, bool settled)</td></tr>
<tr class="memdesc:aeaa34f6835f18ee3f89db5a01559a496"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update the delivery with the given disposition if not locally settled and optionally settles the delivery if not already settled. Applies the given delivery state and local settlement value to this delivery writing a new disposition frame if the remote has not already settled the delivery. Once locally settled no additional updates to the local delivery state can be applied and if attempted an exception will be thrown to indicate this is not possible. <a href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#aeaa34f6835f18ee3f89db5a01559a496">More...</a><br /></td></tr>
<tr class="separator:aeaa34f6835f18ee3f89db5a01559a496"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e229f1f72c1dbf0ff4a506538267d72"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#a0e229f1f72c1dbf0ff4a506538267d72">Settle</a> ()</td></tr>
<tr class="memdesc:a0e229f1f72c1dbf0ff4a506538267d72"><td class="mdescLeft">&#160;</td><td class="mdescRight">Settles this delivery locally, transmitting a disposition 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 delivery state via one of the disposition methods. <a href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#a0e229f1f72c1dbf0ff4a506538267d72">More...</a><br /></td></tr>
<tr class="separator:a0e229f1f72c1dbf0ff4a506538267d72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a725c006103bcac43906e916ddda730ec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#a725c006103bcac43906e916ddda730ec">Abort</a> ()</td></tr>
<tr class="memdesc:a725c006103bcac43906e916ddda730ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Aborts the outgoing delivery if it has not already been marked as complete. <a href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#a725c006103bcac43906e916ddda730ec">More...</a><br /></td></tr>
<tr class="separator:a725c006103bcac43906e916ddda730ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a461f3012eec637ec74144c417d6bbc6c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#a461f3012eec637ec74144c417d6bbc6c">StreamBytes</a> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer)</td></tr>
<tr class="memdesc:a461f3012eec637ec74144c417d6bbc6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write the given bytes as a portion of the payload of this delivery, additional bytes can be streamed until the stream complete flag is set to true on a call to either the stream bytes method that accepts a done flag or a call to the write bytes API where all bytes are consumed from the passed in buffer. The sender will output as much of the buffer as possible within the constraints of both the link credit and the current capacity of the parent session. The caller must check that all bytes were written and if not they should await updates from sender state update event or poll the sender to see when it becomes writeable once more and again attempt to write the remaining bytes. <a href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#a461f3012eec637ec74144c417d6bbc6c">More...</a><br /></td></tr>
<tr class="separator:a461f3012eec637ec74144c417d6bbc6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7d0820e252309de082183059bd76ca3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#ac7d0820e252309de082183059bd76ca3">StreamBytes</a> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer, bool complete)</td></tr>
<tr class="memdesc:ac7d0820e252309de082183059bd76ca3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write the given bytes as a portion of the payload of this delivery, additional bytes can be streamed until the stream complete flag is set to true on a call to either this method method or a call to the write bytes API where all bytes are consumed from the passed in buffer. The sender will output as much of the buffer as possible within the constraints of both the link credit and the current capacity of the parent session. The caller must check that all bytes were written and if not they should await updates from sender state update event or poll the sender to see when it becomes writeable once more and again attempt to write the remaining bytes. <a href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#ac7d0820e252309de082183059bd76ca3">More...</a><br /></td></tr>
<tr class="separator:ac7d0820e252309de082183059bd76ca3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7b1f8f8474e7a874188f8dc49de1b50"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#af7b1f8f8474e7a874188f8dc49de1b50">WriteBytes</a> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer)</td></tr>
<tr class="memdesc:af7b1f8f8474e7a874188f8dc49de1b50"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write the given bytes as the payload of this delivery, no additional writes can occur on this delivery if the write succeeds in sending all of the given bytes. When called the provided buffer is treated as containing the entirety of the transfer payload and the Transfer(s) that result from this call will result in a final Transfer frame whose more flag is set to false which tells the remote that no additional data will be sent for this delivery. The sender will output as much of the buffer as possible within the constraints of both the link credit and the current capacity of the parent session. The caller must check that all bytes were written and if not they should await updates from the sender that indicate that the it has become sendable once again or the caller should check via polling that the sender has become sendable periodically until it becomes true once again. <a href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#af7b1f8f8474e7a874188f8dc49de1b50">More...</a><br /></td></tr>
<tr class="separator:af7b1f8f8474e7a874188f8dc49de1b50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a328927787ab760b09c11ac9e9fce5f20"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#a328927787ab760b09c11ac9e9fce5f20">DeliveryStateUpdatedHandler</a> (Action&lt; <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a> &gt; handler)</td></tr>
<tr class="memdesc:a328927787ab760b09c11ac9e9fce5f20"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handler for updates to the remote state of outgoing deliveries that have previously been sent. Remote state updates for an previously sent delivery can happen when the remote settles a complete delivery or otherwise modifies the delivery outcome and the user needs to act on those changes such as a spontaneous update to the delivery state. <a href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonOutgoingDelivery.html#a328927787ab760b09c11ac9e9fce5f20">More...</a><br /></td></tr>
<tr class="separator:a328927787ab760b09c11ac9e9fce5f20"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:ae9d3da2b1191f3010d1d42e216318979"><td class="memItemLeft" align="right" valign="top"><a id="ae9d3da2b1191f3010d1d42e216318979"></a>
<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1ISender.html">ISender</a>&#160;</td><td class="memItemRight" valign="bottom"><b>Sender</b><code> [get]</code></td></tr>
<tr class="separator:ae9d3da2b1191f3010d1d42e216318979"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfaf08e8d55fd53a80bc07ba9b90f558"><td class="memItemLeft" align="right" valign="top"><a id="adfaf08e8d55fd53a80bc07ba9b90f558"></a>
<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IAttachments.html">IAttachments</a>&#160;</td><td class="memItemRight" valign="bottom"><b>Attachments</b><code> [get]</code></td></tr>
<tr class="separator:adfaf08e8d55fd53a80bc07ba9b90f558"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4986ac4cedb001894abd546e7f0ca72c"><td class="memItemLeft" align="right" valign="top"><a id="a4986ac4cedb001894abd546e7f0ca72c"></a>
object&#160;</td><td class="memItemRight" valign="bottom"><b>LinkedResource</b><code> [get, set]</code></td></tr>
<tr class="separator:a4986ac4cedb001894abd546e7f0ca72c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1289895e6f6dfcade1325d6b2601ffb9"><td class="memItemLeft" align="right" valign="top"><a id="a1289895e6f6dfcade1325d6b2601ffb9"></a>
<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Types_1_1IDeliveryTag.html">IDeliveryTag</a>&#160;</td><td class="memItemRight" valign="bottom"><b>DeliveryTag</b><code> [get, set]</code></td></tr>
<tr class="separator:a1289895e6f6dfcade1325d6b2601ffb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26f28356a587c00d90b6f124e2f3c836"><td class="memItemLeft" align="right" valign="top"><a id="a26f28356a587c00d90b6f124e2f3c836"></a>
uint&#160;</td><td class="memItemRight" valign="bottom"><b>MessageFormat</b><code> [get, set]</code></td></tr>
<tr class="separator:a26f28356a587c00d90b6f124e2f3c836"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3026d58b7684e2a6623b6610eef0a87"><td class="memItemLeft" align="right" valign="top"><a id="aa3026d58b7684e2a6623b6610eef0a87"></a>
byte[]&#160;</td><td class="memItemRight" valign="bottom"><b>DeliveryTagBytes</b><code> [get, set]</code></td></tr>
<tr class="separator:aa3026d58b7684e2a6623b6610eef0a87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b0da7f15c1ef5b3629b35ca38c96b99"><td class="memItemLeft" align="right" valign="top"><a id="a4b0da7f15c1ef5b3629b35ca38c96b99"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>IsPartial</b><code> [get]</code></td></tr>
<tr class="separator:a4b0da7f15c1ef5b3629b35ca38c96b99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a537576390fa0f4205faf24b0051c12b9"><td class="memItemLeft" align="right" valign="top"><a id="a537576390fa0f4205faf24b0051c12b9"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>IsAborted</b><code> [get]</code></td></tr>
<tr class="separator:a537576390fa0f4205faf24b0051c12b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae39c01636329e82c4670d6dfb7b5a71d"><td class="memItemLeft" align="right" valign="top"><a id="ae39c01636329e82c4670d6dfb7b5a71d"></a>
<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Types_1_1Transport_1_1IDeliveryState.html">IDeliveryState</a>&#160;</td><td class="memItemRight" valign="bottom"><b>State</b><code> [get]</code></td></tr>
<tr class="separator:ae39c01636329e82c4670d6dfb7b5a71d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac75bf157c852fb144ad953f8cbbc4139"><td class="memItemLeft" align="right" valign="top"><a id="ac75bf157c852fb144ad953f8cbbc4139"></a>
<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Types_1_1Transport_1_1IDeliveryState.html">IDeliveryState</a>&#160;</td><td class="memItemRight" valign="bottom"><b>RemoteState</b><code> [get, set]</code></td></tr>
<tr class="separator:ac75bf157c852fb144ad953f8cbbc4139"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acade986a8d0f7d3c95dbea05ebd5dd72"><td class="memItemLeft" align="right" valign="top"><a id="acade986a8d0f7d3c95dbea05ebd5dd72"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>IsSettled</b><code> [get]</code></td></tr>
<tr class="separator:acade986a8d0f7d3c95dbea05ebd5dd72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a157a1b5035aebbed17a39fd0d380f8de"><td class="memItemLeft" align="right" valign="top"><a id="a157a1b5035aebbed17a39fd0d380f8de"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>IsRemotelySettled</b><code> [get]</code></td></tr>
<tr class="separator:a157a1b5035aebbed17a39fd0d380f8de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad22bcb932e2e17818ccad8a4c1557928"><td class="memItemLeft" align="right" valign="top"><a id="ad22bcb932e2e17818ccad8a4c1557928"></a>
uint&#160;</td><td class="memItemRight" valign="bottom"><b>TransferCount</b><code> [get]</code></td></tr>
<tr class="separator:ad22bcb932e2e17818ccad8a4c1557928"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td colspan="2" onclick="javascript:toggleInherit('properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery')"><img src="closed.png" alt="-"/>&#160;Properties inherited from <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">Apache.Qpid.Proton.Engine.IOutgoingDelivery</a></td></tr>
<tr class="memitem:ad19a44126137f867059ba86c0e3c7651 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1ISender.html">ISender</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#ad19a44126137f867059ba86c0e3c7651">Sender</a><code> [get]</code></td></tr>
<tr class="memdesc:ad19a44126137f867059ba86c0e3c7651 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the sender instance that owns this outgoing delivery. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#ad19a44126137f867059ba86c0e3c7651">More...</a><br /></td></tr>
<tr class="separator:ad19a44126137f867059ba86c0e3c7651 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a825c521e7f96dc80201945a815773bf3 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IAttachments.html">IAttachments</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a825c521e7f96dc80201945a815773bf3">Attachments</a><code> [get]</code></td></tr>
<tr class="memdesc:a825c521e7f96dc80201945a815773bf3 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the attachments instance that allows callers to attach state data to an outgoing delivery instance. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a825c521e7f96dc80201945a815773bf3">More...</a><br /></td></tr>
<tr class="separator:a825c521e7f96dc80201945a815773bf3 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79ca786dba6bd8e1f1111fe21d4141cf inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top">object&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a79ca786dba6bd8e1f1111fe21d4141cf">LinkedResource</a><code> [get, set]</code></td></tr>
<tr class="memdesc:a79ca786dba6bd8e1f1111fe21d4141cf inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allows the endpoint to have some user defined resource linked to it which can be used to store application state data or other associated object instances with this outgoing delivery. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a79ca786dba6bd8e1f1111fe21d4141cf">More...</a><br /></td></tr>
<tr class="separator:a79ca786dba6bd8e1f1111fe21d4141cf inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa50a140c0b9a47e3e1591782baed641b inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#aa50a140c0b9a47e3e1591782baed641b">MessageFormat</a><code> [get, set]</code></td></tr>
<tr class="memdesc:aa50a140c0b9a47e3e1591782baed641b inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the message-format for this Delivery, representing the 32bit value using an unsigned integer value. The message format can only be set prior to the first Transfer of delivery payload having been written. If one of the delivery write methods is called prior to the message format being set then it defaults to the AMQP default format of zero. If called after having written delivery payload bytes the set access method throws an exception. The default value is 0 as per the message format defined in the core AMQP 1.0 specification. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#aa50a140c0b9a47e3e1591782baed641b">More...</a><br /></td></tr>
<tr class="separator:aa50a140c0b9a47e3e1591782baed641b inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52990395bc6f1f37d064a02f5b77eef6 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Types_1_1IDeliveryTag.html">IDeliveryTag</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a52990395bc6f1f37d064a02f5b77eef6">DeliveryTag</a><code> [get, set]</code></td></tr>
<tr class="memdesc:a52990395bc6f1f37d064a02f5b77eef6 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the delivery tag to assign to this outgoing delivery which if setting a value must be done prior to calling one of the delivery bytes write methods. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a52990395bc6f1f37d064a02f5b77eef6">More...</a><br /></td></tr>
<tr class="separator:a52990395bc6f1f37d064a02f5b77eef6 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab55c333f1f4871b6509b6b5d2b9d033d inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top">byte[]&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#ab55c333f1f4871b6509b6b5d2b9d033d">DeliveryTagBytes</a><code> [get, set]</code></td></tr>
<tr class="memdesc:ab55c333f1f4871b6509b6b5d2b9d033d inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the delivery tag to assign to this outgoing delivery as a byte array which if setting a value must be done prior to calling one of the delivery bytes write methods. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#ab55c333f1f4871b6509b6b5d2b9d033d">More...</a><br /></td></tr>
<tr class="separator:ab55c333f1f4871b6509b6b5d2b9d033d inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9c51bdd4324f0874cb9ab069163bddf inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#ab9c51bdd4324f0874cb9ab069163bddf">IsPartial</a><code> [get]</code></td></tr>
<tr class="memdesc:ab9c51bdd4324f0874cb9ab069163bddf inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns if the delivery is in a partial state meaning that the sender has not completed the write of payload via one of the byte write methods. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#ab9c51bdd4324f0874cb9ab069163bddf">More...</a><br /></td></tr>
<tr class="separator:ab9c51bdd4324f0874cb9ab069163bddf inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aedea3a06e501a1bc91eec069ac242605 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#aedea3a06e501a1bc91eec069ac242605">IsAborted</a><code> [get]</code></td></tr>
<tr class="memdesc:aedea3a06e501a1bc91eec069ac242605 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the delivery was previously aborted. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#aedea3a06e501a1bc91eec069ac242605">More...</a><br /></td></tr>
<tr class="separator:aedea3a06e501a1bc91eec069ac242605 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa54282c15ee0b297712d6ed82ebe8275 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Types_1_1Transport_1_1IDeliveryState.html">IDeliveryState</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#aa54282c15ee0b297712d6ed82ebe8275">State</a><code> [get]</code></td></tr>
<tr class="memdesc:aa54282c15ee0b297712d6ed82ebe8275 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the delivery state assigned by the local end of this delivery. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#aa54282c15ee0b297712d6ed82ebe8275">More...</a><br /></td></tr>
<tr class="separator:aa54282c15ee0b297712d6ed82ebe8275 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a067689fa4713af7839b562422df5ff70 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Types_1_1Transport_1_1IDeliveryState.html">IDeliveryState</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a067689fa4713af7839b562422df5ff70">RemoteState</a><code> [get]</code></td></tr>
<tr class="memdesc:a067689fa4713af7839b562422df5ff70 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the delivery state assigned by the remote end of this delivery. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a067689fa4713af7839b562422df5ff70">More...</a><br /></td></tr>
<tr class="separator:a067689fa4713af7839b562422df5ff70 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00aca585fe7699245ef63b7fc7c6b8fe inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a00aca585fe7699245ef63b7fc7c6b8fe">IsSettled</a><code> [get]</code></td></tr>
<tr class="memdesc:a00aca585fe7699245ef63b7fc7c6b8fe inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the delivery has been settled locally. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a00aca585fe7699245ef63b7fc7c6b8fe">More...</a><br /></td></tr>
<tr class="separator:a00aca585fe7699245ef63b7fc7c6b8fe inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3209478e2be065099f4d1e57a050d1be inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a3209478e2be065099f4d1e57a050d1be">IsRemotelySettled</a><code> [get]</code></td></tr>
<tr class="memdesc:a3209478e2be065099f4d1e57a050d1be inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Checks if the delivery has been settled by the remote. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a3209478e2be065099f4d1e57a050d1be">More...</a><br /></td></tr>
<tr class="separator:a3209478e2be065099f4d1e57a050d1be inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79fb190e17e2f481a958f00e6c40a1a1 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a79fb190e17e2f481a958f00e6c40a1a1">TransferCount</a><code> [get]</code></td></tr>
<tr class="memdesc:a79fb190e17e2f481a958f00e6c40a1a1 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the total number of transfer frames that have arrived for this delivery so far. <a href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a79fb190e17e2f481a958f00e6c40a1a1">More...</a><br /></td></tr>
<tr class="separator:a79fb190e17e2f481a958f00e6c40a1a1 inherit properties_interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Outgoing delivery implementation that manges the state and payload writes for this delivery. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a255376137a323b2de156e519f5f1530e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a255376137a323b2de156e519f5f1530e">&#9670;&nbsp;</a></span>ProtonOutgoingDelivery()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery.ProtonOutgoingDelivery </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Engine_1_1Implementation_1_1ProtonSender.html">ProtonSender</a>&#160;</td>
<td class="paramname"><em>link</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates the outgoing delivery instance and assigns it to the given link. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">link</td><td>The parent link</td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a725c006103bcac43906e916ddda730ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a725c006103bcac43906e916ddda730ec">&#9670;&nbsp;</a></span>Abort()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a> Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery.Abort </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Aborts the outgoing delivery if it has not already been marked as complete. </p>
<dl class="section return"><dt>Returns</dt><dd>This outgoing delivery instance.</dd></dl>
<p>Implements <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#abf00190848a798a89930cb2cac7bdad7">Apache.Qpid.Proton.Engine.IOutgoingDelivery</a>.</p>
</div>
</div>
<a id="a328927787ab760b09c11ac9e9fce5f20"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a328927787ab760b09c11ac9e9fce5f20">&#9670;&nbsp;</a></span>DeliveryStateUpdatedHandler()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a> Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery.DeliveryStateUpdatedHandler </td>
<td>(</td>
<td class="paramtype">Action&lt; <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a> &gt;&#160;</td>
<td class="paramname"><em>handler</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Handler for updates to the remote state of outgoing deliveries that have previously been sent. Remote state updates for an previously sent delivery can happen when the remote settles a complete delivery or otherwise modifies the delivery outcome and the user needs to act on those changes such as a spontaneous update to the delivery state. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">handler</td><td>A delegate that will handle this event</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This outgoing delivery instance</dd></dl>
<p>Implements <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#ac640c417694eab369b496f047f617577">Apache.Qpid.Proton.Engine.IOutgoingDelivery</a>.</p>
</div>
</div>
<a id="ad9dc589ade7007858b262f755d5db804"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9dc589ade7007858b262f755d5db804">&#9670;&nbsp;</a></span>Disposition() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a> Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery.Disposition </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Types_1_1Transport_1_1IDeliveryState.html">IDeliveryState</a>&#160;</td>
<td class="paramname"><em>state</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Update the delivery with the given disposition if not locally settled. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">state</td><td>The delivery state to apply to this delivery</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This outgoing delivery instance</dd></dl>
<p>Implements <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a7e898cee8d470169391a55caf5fd477b">Apache.Qpid.Proton.Engine.IOutgoingDelivery</a>.</p>
</div>
</div>
<a id="aeaa34f6835f18ee3f89db5a01559a496"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeaa34f6835f18ee3f89db5a01559a496">&#9670;&nbsp;</a></span>Disposition() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a> Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery.Disposition </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Types_1_1Transport_1_1IDeliveryState.html">IDeliveryState</a>&#160;</td>
<td class="paramname"><em>state</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>settled</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Update the delivery with the given disposition if not locally settled and optionally settles the delivery if not already settled. Applies the given delivery state and local settlement value to this delivery writing a new disposition frame if the remote has not already settled the delivery. Once locally settled no additional updates to the local delivery state can be applied and if attempted an exception will be thrown to indicate this is not possible. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">state</td><td>The delivery state to apply to this delivery</td></tr>
<tr><td class="paramname">settled</td><td>Should the delivery be settled</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This outgoing delivery instance</dd></dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">InvalidOperationException</td><td>If already locally settled"</td></tr>
</table>
</dd>
</dl>
<p>Implements <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#ae2c3c257712bab75f1869b1a1be408c8">Apache.Qpid.Proton.Engine.IOutgoingDelivery</a>.</p>
</div>
</div>
<a id="a0e229f1f72c1dbf0ff4a506538267d72"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0e229f1f72c1dbf0ff4a506538267d72">&#9670;&nbsp;</a></span>Settle()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a> Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery.Settle </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Settles this delivery locally, transmitting a disposition 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 delivery state via one of the disposition methods. </p>
<dl class="section return"><dt>Returns</dt><dd>This outgoing delivery instance</dd></dl>
<p>Implements <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a4841b9233502d5361679803dba9ec83b">Apache.Qpid.Proton.Engine.IOutgoingDelivery</a>.</p>
</div>
</div>
<a id="a461f3012eec637ec74144c417d6bbc6c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a461f3012eec637ec74144c417d6bbc6c">&#9670;&nbsp;</a></span>StreamBytes() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a> Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery.StreamBytes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a>&#160;</td>
<td class="paramname"><em>buffer</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Write the given bytes as a portion of the payload of this delivery, additional bytes can be streamed until the stream complete flag is set to true on a call to either the stream bytes method that accepts a done flag or a call to the write bytes API where all bytes are consumed from the passed in buffer. The sender will output as much of the buffer as possible within the constraints of both the link credit and the current capacity of the parent session. The caller must check that all bytes were written and if not they should await updates from sender state update event or poll the sender to see when it becomes writeable once more and again attempt to write the remaining bytes. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">buffer</td><td>The payload to send for this delivery.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This outgoing delivery instance.</dd></dl>
<p>Implements <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a970cb11bf54f7de21e7ea6c82517ce91">Apache.Qpid.Proton.Engine.IOutgoingDelivery</a>.</p>
</div>
</div>
<a id="ac7d0820e252309de082183059bd76ca3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac7d0820e252309de082183059bd76ca3">&#9670;&nbsp;</a></span>StreamBytes() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a> Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery.StreamBytes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a>&#160;</td>
<td class="paramname"><em>buffer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>complete</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Write the given bytes as a portion of the payload of this delivery, additional bytes can be streamed until the stream complete flag is set to true on a call to either this method method or a call to the write bytes API where all bytes are consumed from the passed in buffer. The sender will output as much of the buffer as possible within the constraints of both the link credit and the current capacity of the parent session. The caller must check that all bytes were written and if not they should await updates from sender state update event or poll the sender to see when it becomes writeable once more and again attempt to write the remaining bytes. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">buffer</td><td>The payload to send for this delivery.</td></tr>
<tr><td class="paramname">complete</td><td>Should the delivery be completed.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This outgoing delivery instance.</dd></dl>
<p>Implements <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a964b8186dd059d70f89e9d2231de9451">Apache.Qpid.Proton.Engine.IOutgoingDelivery</a>.</p>
</div>
</div>
<a id="af7b1f8f8474e7a874188f8dc49de1b50"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af7b1f8f8474e7a874188f8dc49de1b50">&#9670;&nbsp;</a></span>WriteBytes()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html">IOutgoingDelivery</a> Apache.Qpid.Proton.Engine.Implementation.ProtonOutgoingDelivery.WriteBytes </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a>&#160;</td>
<td class="paramname"><em>buffer</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Write the given bytes as the payload of this delivery, no additional writes can occur on this delivery if the write succeeds in sending all of the given bytes. When called the provided buffer is treated as containing the entirety of the transfer payload and the Transfer(s) that result from this call will result in a final Transfer frame whose more flag is set to false which tells the remote that no additional data will be sent for this delivery. The sender will output as much of the buffer as possible within the constraints of both the link credit and the current capacity of the parent session. The caller must check that all bytes were written and if not they should await updates from the sender that indicate that the it has become sendable once again or the caller should check via polling that the sender has become sendable periodically until it becomes true once again. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">buffer</td><td>The payload to send for this delivery.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>This outgoing delivery instance.</dd></dl>
<p>Implements <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Engine_1_1IOutgoingDelivery.html#a89fdc458e54796e137a044574749f914">Apache.Qpid.Proton.Engine.IOutgoingDelivery</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/Proton/Engine/Implementation/ProtonOutgoingDelivery.cs</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>