| <!DOCTYPE HTML> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc (11.0.11) on Wed May 12 10:10:59 EDT 2021 --> |
| <title>Sender (Qpid ProtonJ2 Parent 1.0.0-M1 API)</title> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <meta name="dc.created" content="2021-05-12"> |
| <link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style"> |
| <link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style"> |
| <script type="text/javascript" src="../../../../../script.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script> |
| <!--[if IE]> |
| <script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script> |
| <![endif]--> |
| <script type="text/javascript" src="../../../../../jquery/jquery-3.5.1.js"></script> |
| <script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="Sender (Qpid ProtonJ2 Parent 1.0.0-M1 API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var data = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6}; |
| var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| var pathtoroot = "../../../../../"; |
| var useModuleDirectories = true; |
| loadScripts(document, 'script');</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/Sender.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="../../../../../index-all.html">Index</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 Classes</a></li> |
| </ul> |
| <ul class="navListSearch"> |
| <li><label for="search">SEARCH:</label> |
| <input type="text" id="search" value="search" disabled="disabled"> |
| <input type="reset" id="reset" value="reset" disabled="disabled"> |
| </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: </li> |
| <li>Nested | </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li>Constr | </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"> </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> <a href="package-summary.html">org.apache.qpid.protonj2.engine</a></div> |
| <h2 title="Interface Sender" class="title">Interface Sender</h2> |
| </div> |
| <div class="contentContainer"> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <dl> |
| <dt>All Superinterfaces:</dt> |
| <dd><code><a href="Endpoint.html" title="interface in org.apache.qpid.protonj2.engine">Endpoint</a><<a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a>></code>, <code><a href="Link.html" title="interface in org.apache.qpid.protonj2.engine">Link</a><<a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a>></code></dd> |
| </dl> |
| <dl> |
| <dt>All Known Implementing Classes:</dt> |
| <dd><code><a href="impl/ProtonSender.html" title="class in org.apache.qpid.protonj2.engine.impl">ProtonSender</a></code></dd> |
| </dl> |
| <hr> |
| <pre>public interface <span class="typeNameLabel">Sender</span> |
| extends <a href="Link.html" title="interface in org.apache.qpid.protonj2.engine">Link</a><<a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a>></pre> |
| <div class="block">AMQP Sender API</div> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd"> </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><a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#current()">current</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Gets the current <a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>OutgoingDelivery</code></a> for this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> if one is available.</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code><a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deliveryStateUpdatedHandler(org.apache.qpid.protonj2.engine.EventHandler)">deliveryStateUpdatedHandler</a></span>​(<a href="EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a><<a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a>> handler)</code></th> |
| <td class="colLast"> |
| <div class="block">Handler for updates for deliveries that have previously been sent.</div> |
| </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code><a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#disposition(java.util.function.Predicate,org.apache.qpid.protonj2.types.transport.DeliveryState,boolean)">disposition</a></span>​(java.util.function.Predicate<<a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a>> filter, |
| <a href="../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a> state, |
| boolean settle)</code></th> |
| <td class="colLast"> |
| <div class="block">For each unsettled outgoing delivery that is pending in the <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> apply the given predicate |
| and if it matches then apply the given delivery state and settled value to it.</div> |
| </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code><a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#drained()">drained</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Called when the <a href="Receiver.html" title="interface in org.apache.qpid.protonj2.engine"><code>Receiver</code></a> has requested a drain of credit and the sender |
| has sent all available messages.</div> |
| </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code><a href="DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine">DeliveryTagGenerator</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDeliveryTagGenerator()">getDeliveryTagGenerator</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasUnsettled()">hasUnsettled</a></span>()</code></th> |
| <td class="colLast"> </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isSendable()">isSendable</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Checks if the sender has credit and the session window allows for any bytes to be written currently.</div> |
| </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code><a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#next()">next</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">When there has been no deliveries so far or the current delivery has reached a complete state this |
| method updates the current delivery to a new instance and returns that value.</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code><a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDeliveryTagGenerator(org.apache.qpid.protonj2.engine.DeliveryTagGenerator)">setDeliveryTagGenerator</a></span>​(<a href="DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine">DeliveryTagGenerator</a> generator)</code></th> |
| <td class="colLast"> |
| <div class="block">Configures a <a href="DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine"><code>DeliveryTagGenerator</code></a> that will be used to create and set a <a href="../types/DeliveryTag.html" title="interface in org.apache.qpid.protonj2.types"><code>DeliveryTag</code></a> |
| value on each new <a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>OutgoingDelivery</code></a> that is created and returned from the <a href="#next()"><code>next()</code></a> |
| method.</div> |
| </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code><a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#settle(java.util.function.Predicate)">settle</a></span>​(java.util.function.Predicate<<a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a>> filter)</code></th> |
| <td class="colLast"> |
| <div class="block">For each unsettled outgoing delivery that is pending in the <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> apply the given predicate |
| and if it matches then settle the delivery.</div> |
| </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code>java.util.Collection<<a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a>></code></td> |
| <th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#unsettled()">unsettled</a></span>()</code></th> |
| <td class="colLast"> |
| <div class="block">Retrieves the list of unsettled deliveries sent from this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a>.</div> |
| </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.org.apache.qpid.protonj2.engine.Endpoint"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from interface org.apache.qpid.protonj2.engine.<a href="Endpoint.html" title="interface in org.apache.qpid.protonj2.engine">Endpoint</a></h3> |
| <code><a href="Endpoint.html#close()">close</a>, <a href="Endpoint.html#closeHandler(org.apache.qpid.protonj2.engine.EventHandler)">closeHandler</a>, <a href="Endpoint.html#engineShutdownHandler(org.apache.qpid.protonj2.engine.EventHandler)">engineShutdownHandler</a>, <a href="Endpoint.html#getAttachments()">getAttachments</a>, <a href="Endpoint.html#getCondition()">getCondition</a>, <a href="Endpoint.html#getDesiredCapabilities()">getDesiredCapabilities</a>, <a href="Endpoint.html#getEngine()">getEngine</a>, <a href="Endpoint.html#getLinkedResource()">getLinkedResource</a>, <a href="Endpoint.html#getLinkedResource(java.lang.Class)">getLinkedResource</a>, <a href="Endpoint.html#getOfferedCapabilities()">getOfferedCapabilities</a>, <a href="Endpoint.html#getProperties()">getProperties</a>, <a href="Endpoint.html#getRemoteCondition()">getRemoteCondition</a>, <a href="Endpoint.html#getRemoteDesiredCapabilities()">getRemoteDesiredCapabilities</a>, <a href="Endpoint.html#getRemoteOfferedCapabilities()">getRemoteOfferedCapabilities</a>, <a href="Endpoint.html#getRemoteProperties()">getRemoteProperties</a>, <a href="Endpoint.html#isLocallyClosed()">isLocallyClosed</a>, <a href="Endpoint.html#isLocallyOpen()">isLocallyOpen</a>, <a href="Endpoint.html#localCloseHandler(org.apache.qpid.protonj2.engine.EventHandler)">localCloseHandler</a>, <a href="Endpoint.html#localOpenHandler(org.apache.qpid.protonj2.engine.EventHandler)">localOpenHandler</a>, <a href="Endpoint.html#open()">open</a>, <a href="Endpoint.html#openHandler(org.apache.qpid.protonj2.engine.EventHandler)">openHandler</a>, <a href="Endpoint.html#setCondition(org.apache.qpid.protonj2.types.transport.ErrorCondition)">setCondition</a>, <a href="Endpoint.html#setDesiredCapabilities(org.apache.qpid.protonj2.types.Symbol...)">setDesiredCapabilities</a>, <a href="Endpoint.html#setLinkedResource(java.lang.Object)">setLinkedResource</a>, <a href="Endpoint.html#setOfferedCapabilities(org.apache.qpid.protonj2.types.Symbol...)">setOfferedCapabilities</a>, <a href="Endpoint.html#setProperties(java.util.Map)">setProperties</a></code></li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a id="methods.inherited.from.class.org.apache.qpid.protonj2.engine.Link"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from interface org.apache.qpid.protonj2.engine.<a href="Link.html" title="interface in org.apache.qpid.protonj2.engine">Link</a></h3> |
| <code><a href="Link.html#creditStateUpdateHandler(org.apache.qpid.protonj2.engine.EventHandler)">creditStateUpdateHandler</a>, <a href="Link.html#detach()">detach</a>, <a href="Link.html#detachHandler(org.apache.qpid.protonj2.engine.EventHandler)">detachHandler</a>, <a href="Link.html#getConnection()">getConnection</a>, <a href="Link.html#getCredit()">getCredit</a>, <a href="Link.html#getMaxMessageSize()">getMaxMessageSize</a>, <a href="Link.html#getName()">getName</a>, <a href="Link.html#getParent()">getParent</a>, <a href="Link.html#getReceiverSettleMode()">getReceiverSettleMode</a>, <a href="Link.html#getRemoteMaxMessageSize()">getRemoteMaxMessageSize</a>, <a href="Link.html#getRemoteReceiverSettleMode()">getRemoteReceiverSettleMode</a>, <a href="Link.html#getRemoteSenderSettleMode()">getRemoteSenderSettleMode</a>, <a href="Link.html#getRemoteSource()">getRemoteSource</a>, <a href="Link.html#getRemoteState()">getRemoteState</a>, <a href="Link.html#getRemoteTarget()">getRemoteTarget</a>, <a href="Link.html#getRole()">getRole</a>, <a href="Link.html#getSenderSettleMode()">getSenderSettleMode</a>, <a href="Link.html#getSession()">getSession</a>, <a href="Link.html#getSource()">getSource</a>, <a href="Link.html#getState()">getState</a>, <a href="Link.html#getTarget()">getTarget</a>, <a href="Link.html#isDraining()">isDraining</a>, <a href="Link.html#isLocallyClosedOrDetached()">isLocallyClosedOrDetached</a>, <a href="Link.html#isLocallyDetached()">isLocallyDetached</a>, <a href="Link.html#isReceiver()">isReceiver</a>, <a href="Link.html#isRemotelyClosed()">isRemotelyClosed</a>, <a href="Link.html#isRemotelyClosedOrDetached()">isRemotelyClosedOrDetached</a>, <a href="Link.html#isRemotelyDetached()">isRemotelyDetached</a>, <a href="Link.html#isRemotelyOpen()">isRemotelyOpen</a>, <a href="Link.html#isSender()">isSender</a>, <a href="Link.html#localDetachHandler(org.apache.qpid.protonj2.engine.EventHandler)">localDetachHandler</a>, <a href="Link.html#parentEndpointClosedHandler(org.apache.qpid.protonj2.engine.EventHandler)">parentEndpointClosedHandler</a>, <a href="Link.html#setMaxMessageSize(org.apache.qpid.protonj2.types.UnsignedLong)">setMaxMessageSize</a>, <a href="Link.html#setReceiverSettleMode(org.apache.qpid.protonj2.types.transport.ReceiverSettleMode)">setReceiverSettleMode</a>, <a href="Link.html#setSenderSettleMode(org.apache.qpid.protonj2.types.transport.SenderSettleMode)">setSenderSettleMode</a>, <a href="Link.html#setSource(org.apache.qpid.protonj2.types.messaging.Source)">setSource</a>, <a href="Link.html#setTarget(org.apache.qpid.protonj2.types.messaging.Target)">setTarget</a>, <a href="Link.html#setTarget(org.apache.qpid.protonj2.types.transactions.Coordinator)">setTarget</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </section> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ============ METHOD DETAIL ========== --> |
| <section role="region"> |
| <ul class="blockList"> |
| <li class="blockList"><a id="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a id="drained()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>drained</h4> |
| <pre class="methodSignature"><a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a> drained()</pre> |
| <div class="block">Called when the <a href="Receiver.html" title="interface in org.apache.qpid.protonj2.engine"><code>Receiver</code></a> has requested a drain of credit and the sender |
| has sent all available messages.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> instance.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.IllegalStateException</code> - if the link is not draining currently.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="isSendable()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isSendable</h4> |
| <pre class="methodSignature">boolean isSendable()</pre> |
| <div class="block">Checks if the sender has credit and the session window allows for any bytes to be written currently.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if the link has credit and the session window allows for any bytes to be written.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="current()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>current</h4> |
| <pre class="methodSignature"><a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a> current()</pre> |
| <div class="block">Gets the current <a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>OutgoingDelivery</code></a> for this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> if one is available. |
| <p> |
| The sender only tracks a current delivery in the case that the next method has bee called |
| and if any bytes are written to the delivery using the streaming based API |
| <a href="OutgoingDelivery.html#streamBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer)"><code>OutgoingDelivery.streamBytes(ProtonBuffer)</code></a> which allows for later writing of additional |
| bytes to the delivery. Once the method <a href="OutgoingDelivery.html#writeBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer)"><code>OutgoingDelivery.writeBytes(ProtonBuffer)</code></a> is |
| called the final <a href="../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> is written indicating that the delivery is complete and the |
| current delivery value is reset. An outgoing delivery that is being streamed may also |
| be completed by calling the <a href="OutgoingDelivery.html#abort()"><code>OutgoingDelivery.abort()</code></a> method.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the current active outgoing delivery or null if there is no current delivery.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="next()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>next</h4> |
| <pre class="methodSignature"><a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a> next()</pre> |
| <div class="block">When there has been no deliveries so far or the current delivery has reached a complete state this |
| method updates the current delivery to a new instance and returns that value. If the current |
| <a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>OutgoingDelivery</code></a> has not been completed by either calling the |
| <a href="OutgoingDelivery.html#writeBytes(org.apache.qpid.protonj2.buffer.ProtonBuffer)"><code>OutgoingDelivery.writeBytes(ProtonBuffer)</code></a> or the <a href="OutgoingDelivery.html#abort()"><code>OutgoingDelivery.abort()</code></a> method then |
| this method will throw an exception to indicate the sender state cannot allow a new delivery to be started.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a new delivery instance unless the current delivery is not complete.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code>java.lang.IllegalStateException</code> - if the current delivery has not been marked complete.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="disposition(java.util.function.Predicate,org.apache.qpid.protonj2.types.transport.DeliveryState,boolean)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>disposition</h4> |
| <pre class="methodSignature"><a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a> disposition​(java.util.function.Predicate<<a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a>> filter, |
| <a href="../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport">DeliveryState</a> state, |
| boolean settle)</pre> |
| <div class="block">For each unsettled outgoing delivery that is pending in the <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> apply the given predicate |
| and if it matches then apply the given delivery state and settled value to it.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>filter</code> - The predicate to apply to each unsettled delivery to test for a match.</dd> |
| <dd><code>state</code> - The new <a href="../types/transport/DeliveryState.html" title="interface in org.apache.qpid.protonj2.types.transport"><code>DeliveryState</code></a> to apply to any matching outgoing deliveries.</dd> |
| <dd><code>settle</code> - Boolean indicating if the matching unsettled deliveries should be settled.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> instance.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="settle(java.util.function.Predicate)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>settle</h4> |
| <pre class="methodSignature"><a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a> settle​(java.util.function.Predicate<<a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a>> filter)</pre> |
| <div class="block">For each unsettled outgoing delivery that is pending in the <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> apply the given predicate |
| and if it matches then settle the delivery.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>filter</code> - The predicate to apply to each unsettled delivery to test for a match.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> instance.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="unsettled()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>unsettled</h4> |
| <pre class="methodSignature">java.util.Collection<<a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a>> unsettled()</pre> |
| <div class="block">Retrieves the list of unsettled deliveries sent from this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a>. The deliveries in the <code>Collection</code> |
| cannot be written to but can have their settled state and disposition updated. Only when this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> |
| settles on its end are the <a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>OutgoingDelivery</code></a> instances removed from the unsettled <code>Collection</code>. |
| |
| The <code>Collection</code> returned from this method is a copy of the internally maintained data and is |
| not modifiable. The caller should use this method judiciously to avoid excess GC overhead.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a collection of unsettled deliveries or an empty collection if no pending deliveries are outstanding.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="hasUnsettled()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>hasUnsettled</h4> |
| <pre class="methodSignature">boolean hasUnsettled()</pre> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>true if there are unsettled deliveries for this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> link.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="setDeliveryTagGenerator(org.apache.qpid.protonj2.engine.DeliveryTagGenerator)"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setDeliveryTagGenerator</h4> |
| <pre class="methodSignature"><a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a> setDeliveryTagGenerator​(<a href="DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine">DeliveryTagGenerator</a> generator)</pre> |
| <div class="block">Configures a <a href="DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine"><code>DeliveryTagGenerator</code></a> that will be used to create and set a <a href="../types/DeliveryTag.html" title="interface in org.apache.qpid.protonj2.types"><code>DeliveryTag</code></a> |
| value on each new <a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine"><code>OutgoingDelivery</code></a> that is created and returned from the <a href="#next()"><code>next()</code></a> |
| method.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>generator</code> - The <a href="DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine"><code>DeliveryTagGenerator</code></a> to use to create automatic <a href="../types/DeliveryTag.html" title="interface in org.apache.qpid.protonj2.types"><code>DeliveryTag</code></a> values.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> instance.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="getDeliveryTagGenerator()"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDeliveryTagGenerator</h4> |
| <pre class="methodSignature"><a href="DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine">DeliveryTagGenerator</a> getDeliveryTagGenerator()</pre> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the currently configured <a href="DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine"><code>DeliveryTagGenerator</code></a> for this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a>.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a id="deliveryStateUpdatedHandler(org.apache.qpid.protonj2.engine.EventHandler)"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>deliveryStateUpdatedHandler</h4> |
| <pre class="methodSignature"><a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a> deliveryStateUpdatedHandler​(<a href="EventHandler.html" title="interface in org.apache.qpid.protonj2.engine">EventHandler</a><<a href="OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a>> handler)</pre> |
| <div class="block">Handler for updates for deliveries that have previously been sent. |
| |
| Updates can happen when the remote settles or otherwise modifies the delivery and the |
| user needs to act on those changes.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>handler</code> - The handler that will be invoked when a new update delivery arrives on this link.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>this <a href="Sender.html" title="interface in org.apache.qpid.protonj2.engine"><code>Sender</code></a> instance.</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/Sender.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="../../../../../index-all.html">Index</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 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: </li> |
| <li>Nested | </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li>Constr | </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 © 2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> |
| </footer> |
| </body> |
| </html> |