blob: 107de178d7d93562ea58fa02067db96246eb1968 [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.11) on Wed May 12 10:10:59 EDT 2021 -->
<title>ClientStreamSender (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="ClientStreamSender (Qpid ProtonJ2 Parent 1.0.0-M1 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,"i28":10,"i29":10,"i30":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";
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/ClientStreamSender.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&nbsp;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:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&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.client.impl</a></div>
<h2 title="Class ClientStreamSender" class="title">Class ClientStreamSender</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.qpid.protonj2.client.impl.ClientStreamSender</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code>java.lang.AutoCloseable</code>, <code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code>, <code><a href="../StreamSender.html" title="interface in org.apache.qpid.protonj2.client">StreamSender</a></code></dd>
</dl>
<hr>
<pre>public final class <span class="typeNameLabel">ClientStreamSender</span>
extends java.lang.Object
implements <a href="../StreamSender.html" title="interface in org.apache.qpid.protonj2.client">StreamSender</a></pre>
<div class="block">Client implementation of a <a href="../StreamSender.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSender</code></a>.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected java.util.Deque&lt;<a href="ClientOutgoingEnvelope.html" title="class in org.apache.qpid.protonj2.client.impl">ClientOutgoingEnvelope</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#blocked">blocked</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#closed">closed</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static java.util.concurrent.atomic.AtomicIntegerFieldUpdater&lt;org.apache.qpid.protonj2.client.impl.ClientSender&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#CLOSED_UPDATER">CLOSED_UPDATER</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#closeFuture">closeFuture</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected java.util.concurrent.ScheduledExecutorService</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#executor">executor</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#failureCause">failureCause</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#openFuture">openFuture</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../engine/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="#protonSender">protonSender</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../Source.html" title="interface in org.apache.qpid.protonj2.client">Source</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#remoteSource">remoteSource</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../Target.html" title="interface in org.apache.qpid.protonj2.client">Target</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#remoteTarget">remoteTarget</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#senderId">senderId</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected java.util.function.Consumer&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#senderRemotelyClosedHandler">senderRemotelyClosedHandler</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sendsSettled">sendsSettled</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="ClientSession.html" title="class in org.apache.qpid.protonj2.client.impl">ClientSession</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#session">session</a></span></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>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#address()">address</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the address that the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> instance will send <a href="../Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a> objects
to.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addToHeadOfBlockedQueue(org.apache.qpid.protonj2.client.impl.ClientOutgoingEnvelope)">addToHeadOfBlockedQueue</a></span>&#8203;(<a href="ClientOutgoingEnvelope.html" title="class in org.apache.qpid.protonj2.client.impl">ClientOutgoingEnvelope</a>&nbsp;send)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addToTailOfBlockedQueue(org.apache.qpid.protonj2.client.impl.ClientOutgoingEnvelope)">addToTailOfBlockedQueue</a></span>&#8203;(<a href="ClientOutgoingEnvelope.html" title="class in org.apache.qpid.protonj2.client.impl">ClientOutgoingEnvelope</a>&nbsp;send)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>org.apache.qpid.protonj2.client.impl.ClientStreamSenderMessage</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#beginMessage()">beginMessage</a></span>()</code></th>
<td class="colLast">
<div class="block">Creates and returns a new <a href="../StreamSenderMessage.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSenderMessage</code></a> that can be used by the caller to perform
streaming sends of large message payload data.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>org.apache.qpid.protonj2.client.impl.ClientStreamSenderMessage</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#beginMessage(java.util.Map)">beginMessage</a></span>&#8203;(java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;deliveryAnnotations)</code></th>
<td class="colLast">
<div class="block">Creates and returns a new <a href="../StreamSenderMessage.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSenderMessage</code></a> that can be used by the caller to perform
streaming sends of large message payload data.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#checkClosedOrFailed()">checkClosedOrFailed</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="ClientInstance.html" title="class in org.apache.qpid.protonj2.client.impl">ClientInstance</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#client()">client</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#close()">close</a></span>()</code></th>
<td class="colLast">
<div class="block">Requests a close of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> at the remote and waits until the Sender has been
fully closed or until the configured <a href="../SenderOptions.html#closeTimeout()"><code>SenderOptions.closeTimeout()</code></a> is exceeded.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#close(org.apache.qpid.protonj2.client.ErrorCondition)">close</a></span>&#8203;(<a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client">ErrorCondition</a>&nbsp;error)</code></th>
<td class="colLast">
<div class="block">Requests a close of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> at the remote and waits until the Sender has been
fully closed or until the configured <a href="../SenderOptions.html#closeTimeout()"><code>SenderOptions.closeTimeout()</code></a> is exceeded.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#closeAsync()">closeAsync</a></span>()</code></th>
<td class="colLast">
<div class="block">Requests a close of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link at the remote and returns a <code>Future</code> that will be
completed once the link has been closed.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#closeAsync(org.apache.qpid.protonj2.client.ErrorCondition)">closeAsync</a></span>&#8203;(<a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client">ErrorCondition</a>&nbsp;error)</code></th>
<td class="colLast">
<div class="block">Requests a close of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link at the remote and returns a <code>Future</code> that will be
completed once the link has been closed.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="ClientConnection.html" title="class in org.apache.qpid.protonj2.client.impl">ClientConnection</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#connection()">connection</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>protected <a href="ClientNoOpStreamTracker.html" title="class in org.apache.qpid.protonj2.client.impl">ClientNoOpStreamTracker</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createNoOpTracker()">createNoOpTracker</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected <a href="ClientStreamTracker.html" title="class in org.apache.qpid.protonj2.client.impl">ClientStreamTracker</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createTracker(org.apache.qpid.protonj2.engine.OutgoingDelivery)">createTracker</a></span>&#8203;(<a href="../../engine/OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a>&nbsp;delivery)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>java.lang.String[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#desiredCapabilities()">desiredCapabilities</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the desired capabilities that the remote provided upon successfully opening the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a>.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#detach()">detach</a></span>()</code></th>
<td class="colLast">
<div class="block">Requests a detach of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> at the remote and waits until the Sender has been
fully detached or until the configured <a href="../SenderOptions.html#closeTimeout()"><code>SenderOptions.closeTimeout()</code></a> is exceeded.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#detach(org.apache.qpid.protonj2.client.ErrorCondition)">detach</a></span>&#8203;(<a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client">ErrorCondition</a>&nbsp;error)</code></th>
<td class="colLast">
<div class="block">Requests a detach of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> at the remote and waits until the Sender has been
fully detached or until the configured <a href="../SenderOptions.html#closeTimeout()"><code>SenderOptions.closeTimeout()</code></a> is exceeded.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#detachAsync()">detachAsync</a></span>()</code></th>
<td class="colLast">
<div class="block">Requests a detach of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link at the remote and returns a <code>Future</code> that will be
completed once the link has been detached.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code><a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#detachAsync(org.apache.qpid.protonj2.client.ErrorCondition)">detachAsync</a></span>&#8203;(<a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client">ErrorCondition</a>&nbsp;error)</code></th>
<td class="colLast">
<div class="block">Requests a detach of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link at the remote and returns a <code>Future</code> that will be
completed once the link has been detached.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#notClosedOrFailed(org.apache.qpid.protonj2.client.futures.ClientFuture)">notClosedOrFailed</a></span>&#8203;(<a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;?&gt;&nbsp;request)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>java.lang.String[]</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#offeredCapabilities()">offeredCapabilities</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the offered capabilities that the remote provided upon successfully opening the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a>.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#openFuture()">openFuture</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#properties()">properties</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the properties that the remote provided upon successfully opening the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a>.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="../StreamTracker.html" title="interface in org.apache.qpid.protonj2.client">StreamTracker</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#send(org.apache.qpid.protonj2.client.Message)">send</a></span>&#8203;(<a href="../Message.html" title="interface in org.apache.qpid.protonj2.client">Message</a>&lt;?&gt;&nbsp;message)</code></th>
<td class="colLast">
<div class="block">Send the given message immediately if there is credit available or blocks if the link
has not yet been granted credit.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code><a href="../StreamTracker.html" title="interface in org.apache.qpid.protonj2.client">StreamTracker</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#send(org.apache.qpid.protonj2.client.Message,java.util.Map)">send</a></span>&#8203;(<a href="../Message.html" title="interface in org.apache.qpid.protonj2.client">Message</a>&lt;?&gt;&nbsp;message,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;deliveryAnnotations)</code></th>
<td class="colLast">
<div class="block">Send the given message immediately if there is credit available or blocks if the link
has not yet been granted credit.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>protected <a href="../Tracker.html" title="interface in org.apache.qpid.protonj2.client">Tracker</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#sendMessage(org.apache.qpid.protonj2.client.AdvancedMessage,java.util.Map,boolean)">sendMessage</a></span>&#8203;(<a href="../AdvancedMessage.html" title="interface in org.apache.qpid.protonj2.client">AdvancedMessage</a>&lt;?&gt;&nbsp;message,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;deliveryAnnotations,
boolean&nbsp;waitForCredit)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code><a href="ClientSession.html" title="class in org.apache.qpid.protonj2.client.impl">ClientSession</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#session()">session</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code><a href="../Source.html" title="interface in org.apache.qpid.protonj2.client">Source</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#source()">source</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns an immutable view of the remote <a href="../Source.html" title="interface in org.apache.qpid.protonj2.client"><code>Source</code></a> object assigned to this sender link.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code><a href="../Target.html" title="interface in org.apache.qpid.protonj2.client">Target</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#target()">target</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns an immutable view of the remote <a href="../Target.html" title="interface in org.apache.qpid.protonj2.client"><code>Target</code></a> object assigned to this sender link.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code><a href="../StreamTracker.html" title="interface in org.apache.qpid.protonj2.client">StreamTracker</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#trySend(org.apache.qpid.protonj2.client.Message)">trySend</a></span>&#8203;(<a href="../Message.html" title="interface in org.apache.qpid.protonj2.client">Message</a>&lt;?&gt;&nbsp;message)</code></th>
<td class="colLast">
<div class="block">Send the given message if credit is available or returns null if no credit has been
granted to the link at the time of the send attempt.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code><a href="../StreamTracker.html" title="interface in org.apache.qpid.protonj2.client">StreamTracker</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#trySend(org.apache.qpid.protonj2.client.Message,java.util.Map)">trySend</a></span>&#8203;(<a href="../Message.html" title="interface in org.apache.qpid.protonj2.client">Message</a>&lt;?&gt;&nbsp;message,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;deliveryAnnotations)</code></th>
<td class="colLast">
<div class="block">Send the given message if credit is available or returns null if no credit has been
granted to the link at the time of the send attempt.</div>
</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.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.qpid.protonj2.client.Sender">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.qpid.protonj2.client.<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></h3>
<code><a href="../Sender.html#address()">address</a>, <a href="../Sender.html#client()">client</a>, <a href="../Sender.html#close()">close</a>, <a href="../Sender.html#close(org.apache.qpid.protonj2.client.ErrorCondition)">close</a>, <a href="../Sender.html#closeAsync()">closeAsync</a>, <a href="../Sender.html#closeAsync(org.apache.qpid.protonj2.client.ErrorCondition)">closeAsync</a>, <a href="../Sender.html#connection()">connection</a>, <a href="../Sender.html#desiredCapabilities()">desiredCapabilities</a>, <a href="../Sender.html#detach()">detach</a>, <a href="../Sender.html#detach(org.apache.qpid.protonj2.client.ErrorCondition)">detach</a>, <a href="../Sender.html#detachAsync()">detachAsync</a>, <a href="../Sender.html#detachAsync(org.apache.qpid.protonj2.client.ErrorCondition)">detachAsync</a>, <a href="../Sender.html#offeredCapabilities()">offeredCapabilities</a>, <a href="../Sender.html#openFuture()">openFuture</a>, <a href="../Sender.html#properties()">properties</a>, <a href="../Sender.html#session()">session</a>, <a href="../Sender.html#source()">source</a>, <a href="../Sender.html#target()">target</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a id="CLOSED_UPDATER">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CLOSED_UPDATER</h4>
<pre>protected static final&nbsp;java.util.concurrent.atomic.AtomicIntegerFieldUpdater&lt;org.apache.qpid.protonj2.client.impl.ClientSender&gt; CLOSED_UPDATER</pre>
</li>
</ul>
<a id="openFuture">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>openFuture</h4>
<pre>protected final&nbsp;<a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt; openFuture</pre>
</li>
</ul>
<a id="closeFuture">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>closeFuture</h4>
<pre>protected final&nbsp;<a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt; closeFuture</pre>
</li>
</ul>
<a id="closed">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>closed</h4>
<pre>protected volatile&nbsp;int closed</pre>
</li>
</ul>
<a id="failureCause">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>failureCause</h4>
<pre>protected&nbsp;<a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a> failureCause</pre>
</li>
</ul>
<a id="blocked">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>blocked</h4>
<pre>protected final&nbsp;java.util.Deque&lt;<a href="ClientOutgoingEnvelope.html" title="class in org.apache.qpid.protonj2.client.impl">ClientOutgoingEnvelope</a>&gt; blocked</pre>
</li>
</ul>
<a id="session">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>session</h4>
<pre>protected final&nbsp;<a href="ClientSession.html" title="class in org.apache.qpid.protonj2.client.impl">ClientSession</a> session</pre>
</li>
</ul>
<a id="executor">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>executor</h4>
<pre>protected final&nbsp;java.util.concurrent.ScheduledExecutorService executor</pre>
</li>
</ul>
<a id="senderId">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>senderId</h4>
<pre>protected final&nbsp;java.lang.String senderId</pre>
</li>
</ul>
<a id="sendsSettled">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sendsSettled</h4>
<pre>protected final&nbsp;boolean sendsSettled</pre>
</li>
</ul>
<a id="protonSender">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>protonSender</h4>
<pre>protected&nbsp;<a href="../../engine/Sender.html" title="interface in org.apache.qpid.protonj2.engine">Sender</a> protonSender</pre>
</li>
</ul>
<a id="senderRemotelyClosedHandler">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>senderRemotelyClosedHandler</h4>
<pre>protected&nbsp;java.util.function.Consumer&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt; senderRemotelyClosedHandler</pre>
</li>
</ul>
<a id="remoteSource">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remoteSource</h4>
<pre>protected volatile&nbsp;<a href="../Source.html" title="interface in org.apache.qpid.protonj2.client">Source</a> remoteSource</pre>
</li>
</ul>
<a id="remoteTarget">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>remoteTarget</h4>
<pre>protected volatile&nbsp;<a href="../Target.html" title="interface in org.apache.qpid.protonj2.client">Target</a> remoteTarget</pre>
</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="send(org.apache.qpid.protonj2.client.Message)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>send</h4>
<pre class="methodSignature">public&nbsp;<a href="../StreamTracker.html" title="interface in org.apache.qpid.protonj2.client">StreamTracker</a>&nbsp;send&#8203;(<a href="../Message.html" title="interface in org.apache.qpid.protonj2.client">Message</a>&lt;?&gt;&nbsp;message)
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#send(org.apache.qpid.protonj2.client.Message)">Sender</a></code></span></div>
<div class="block">Send the given message immediately if there is credit available or blocks if the link
has not yet been granted credit.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#send(org.apache.qpid.protonj2.client.Message)">send</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>message</code> - the <a href="../Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a> to send.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="../Tracker.html" title="interface in org.apache.qpid.protonj2.client"><code>Tracker</code></a> for the message delivery</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while initiating the send operation.</dd>
</dl>
</li>
</ul>
<a id="send(org.apache.qpid.protonj2.client.Message,java.util.Map)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>send</h4>
<pre class="methodSignature">public&nbsp;<a href="../StreamTracker.html" title="interface in org.apache.qpid.protonj2.client">StreamTracker</a>&nbsp;send&#8203;(<a href="../Message.html" title="interface in org.apache.qpid.protonj2.client">Message</a>&lt;?&gt;&nbsp;message,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;deliveryAnnotations)
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#send(org.apache.qpid.protonj2.client.Message,java.util.Map)">Sender</a></code></span></div>
<div class="block">Send the given message immediately if there is credit available or blocks if the link
has not yet been granted credit.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#send(org.apache.qpid.protonj2.client.Message,java.util.Map)">send</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>message</code> - the <a href="../Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a> to send.</dd>
<dd><code>deliveryAnnotations</code> - the delivery annotations that should be included in the sent <a href="../Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="../Tracker.html" title="interface in org.apache.qpid.protonj2.client"><code>Tracker</code></a> for the message delivery</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while initiating the send operation.</dd>
</dl>
</li>
</ul>
<a id="trySend(org.apache.qpid.protonj2.client.Message)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>trySend</h4>
<pre class="methodSignature">public&nbsp;<a href="../StreamTracker.html" title="interface in org.apache.qpid.protonj2.client">StreamTracker</a>&nbsp;trySend&#8203;(<a href="../Message.html" title="interface in org.apache.qpid.protonj2.client">Message</a>&lt;?&gt;&nbsp;message)
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#trySend(org.apache.qpid.protonj2.client.Message)">Sender</a></code></span></div>
<div class="block">Send the given message if credit is available or returns null if no credit has been
granted to the link at the time of the send attempt.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#trySend(org.apache.qpid.protonj2.client.Message)">trySend</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>message</code> - the <a href="../Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a> to send if credit is available.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="../Tracker.html" title="interface in org.apache.qpid.protonj2.client"><code>Tracker</code></a> for the message delivery or null if no credit for sending.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while initiating the send operation.</dd>
</dl>
</li>
</ul>
<a id="trySend(org.apache.qpid.protonj2.client.Message,java.util.Map)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>trySend</h4>
<pre class="methodSignature">public&nbsp;<a href="../StreamTracker.html" title="interface in org.apache.qpid.protonj2.client">StreamTracker</a>&nbsp;trySend&#8203;(<a href="../Message.html" title="interface in org.apache.qpid.protonj2.client">Message</a>&lt;?&gt;&nbsp;message,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;deliveryAnnotations)
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#trySend(org.apache.qpid.protonj2.client.Message,java.util.Map)">Sender</a></code></span></div>
<div class="block">Send the given message if credit is available or returns null if no credit has been
granted to the link at the time of the send attempt.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#trySend(org.apache.qpid.protonj2.client.Message,java.util.Map)">trySend</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>message</code> - the <a href="../Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a> to send if credit is available.</dd>
<dd><code>deliveryAnnotations</code> - the delivery annotations that should be included in the sent <a href="../Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="../Tracker.html" title="interface in org.apache.qpid.protonj2.client"><code>Tracker</code></a> for the message delivery or null if no credit for sending.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while initiating the send operation.</dd>
</dl>
</li>
</ul>
<a id="beginMessage()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>beginMessage</h4>
<pre class="methodSignature">public&nbsp;org.apache.qpid.protonj2.client.impl.ClientStreamSenderMessage&nbsp;beginMessage()
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../StreamSender.html#beginMessage()">StreamSender</a></code></span></div>
<div class="block">Creates and returns a new <a href="../StreamSenderMessage.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSenderMessage</code></a> that can be used by the caller to perform
streaming sends of large message payload data.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../StreamSender.html#beginMessage()">beginMessage</a></code>&nbsp;in interface&nbsp;<code><a href="../StreamSender.html" title="interface in org.apache.qpid.protonj2.client">StreamSender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new <a href="../StreamSenderMessage.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSenderMessage</code></a> that can be used to stream message data to the remote.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while initiating a new streaming send message.</dd>
</dl>
</li>
</ul>
<a id="beginMessage(java.util.Map)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>beginMessage</h4>
<pre class="methodSignature">public&nbsp;org.apache.qpid.protonj2.client.impl.ClientStreamSenderMessage&nbsp;beginMessage&#8203;(java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;deliveryAnnotations)
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../StreamSender.html#beginMessage(java.util.Map)">StreamSender</a></code></span></div>
<div class="block">Creates and returns a new <a href="../StreamSenderMessage.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSenderMessage</code></a> that can be used by the caller to perform
streaming sends of large message payload data.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../StreamSender.html#beginMessage(java.util.Map)">beginMessage</a></code>&nbsp;in interface&nbsp;<code><a href="../StreamSender.html" title="interface in org.apache.qpid.protonj2.client">StreamSender</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>deliveryAnnotations</code> - the delivery annotations that should be included in the sent <a href="../StreamSenderMessage.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSenderMessage</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new <a href="../StreamSenderMessage.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSenderMessage</code></a> that can be used to stream message data to the remote.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while initiating a new streaming send message.</dd>
</dl>
</li>
</ul>
<a id="createTracker(org.apache.qpid.protonj2.engine.OutgoingDelivery)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createTracker</h4>
<pre class="methodSignature">protected&nbsp;<a href="ClientStreamTracker.html" title="class in org.apache.qpid.protonj2.client.impl">ClientStreamTracker</a>&nbsp;createTracker&#8203;(<a href="../../engine/OutgoingDelivery.html" title="interface in org.apache.qpid.protonj2.engine">OutgoingDelivery</a>&nbsp;delivery)</pre>
</li>
</ul>
<a id="createNoOpTracker()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createNoOpTracker</h4>
<pre class="methodSignature">protected&nbsp;<a href="ClientNoOpStreamTracker.html" title="class in org.apache.qpid.protonj2.client.impl">ClientNoOpStreamTracker</a>&nbsp;createNoOpTracker()</pre>
</li>
</ul>
<a id="address()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>address</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;address()
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#address()">Sender</a></code></span></div>
<div class="block">Returns the address that the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> instance will send <a href="../Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a> objects
to. The value returned from this method is control by the configuration that was used
to create the sender.
<ul>
<li>
If the Sender is configured as an anonymous sender then this method returns null.
</li>
<li>
If the Sender was created with the dynamic sender methods then the method will return
the dynamically created address once the remote has attached its end of the sender link.
Due to the need to await the remote peer to populate the dynamic address this method will
block until the open of the sender link has completed.
</li>
<li>
If neither of the above is true then the address returned is the address passed to the original
<a href="../Session.html#openSender(java.lang.String)"><code>Session.openSender(String)</code></a> or <a href="../Session.html#openSender(java.lang.String,org.apache.qpid.protonj2.client.SenderOptions)"><code>Session.openSender(String, SenderOptions)</code></a> methods.
</li>
</ul></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#address()">address</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the address that this <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> is sending to.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while obtaining the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> address.</dd>
</dl>
</li>
</ul>
<a id="source()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>source</h4>
<pre class="methodSignature">public&nbsp;<a href="../Source.html" title="interface in org.apache.qpid.protonj2.client">Source</a>&nbsp;source()
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#source()">Sender</a></code></span></div>
<div class="block">Returns an immutable view of the remote <a href="../Source.html" title="interface in org.apache.qpid.protonj2.client"><code>Source</code></a> object assigned to this sender link. If the
attach has not completed yet this method will block to await the attach response which carries the remote
<a href="../Source.html" title="interface in org.apache.qpid.protonj2.client"><code>Source</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#source()">source</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the remote <a href="../Source.html" title="interface in org.apache.qpid.protonj2.client"><code>Source</code></a> node configuration.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while obtaining the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> remote <a href="../Source.html" title="interface in org.apache.qpid.protonj2.client"><code>Source</code></a>.</dd>
</dl>
</li>
</ul>
<a id="target()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>target</h4>
<pre class="methodSignature">public&nbsp;<a href="../Target.html" title="interface in org.apache.qpid.protonj2.client">Target</a>&nbsp;target()
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#target()">Sender</a></code></span></div>
<div class="block">Returns an immutable view of the remote <a href="../Target.html" title="interface in org.apache.qpid.protonj2.client"><code>Target</code></a> object assigned to this sender link. If the
attach has not completed yet this method will block to await the attach response which carries the remote
<a href="../Target.html" title="interface in org.apache.qpid.protonj2.client"><code>Target</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#target()">target</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the remote <a href="../Target.html" title="interface in org.apache.qpid.protonj2.client"><code>Target</code></a> node configuration.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while obtaining the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> remote <a href="../Target.html" title="interface in org.apache.qpid.protonj2.client"><code>Target</code></a>.</dd>
</dl>
</li>
</ul>
<a id="client()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>client</h4>
<pre class="methodSignature">public&nbsp;<a href="ClientInstance.html" title="class in org.apache.qpid.protonj2.client.impl">ClientInstance</a>&nbsp;client()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#client()">client</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="../Client.html" title="interface in org.apache.qpid.protonj2.client"><code>Client</code></a> instance that holds this session's <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a></dd>
</dl>
</li>
</ul>
<a id="connection()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>connection</h4>
<pre class="methodSignature">public&nbsp;<a href="ClientConnection.html" title="class in org.apache.qpid.protonj2.client.impl">ClientConnection</a>&nbsp;connection()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#connection()">connection</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="../Connection.html" title="interface in org.apache.qpid.protonj2.client"><code>Connection</code></a> instance that holds this session's <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a></dd>
</dl>
</li>
</ul>
<a id="session()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>session</h4>
<pre class="methodSignature">public&nbsp;<a href="ClientSession.html" title="class in org.apache.qpid.protonj2.client.impl">ClientSession</a>&nbsp;session()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#session()">session</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <a href="../Session.html" title="interface in org.apache.qpid.protonj2.client"><code>Session</code></a> that created and holds this <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a>.</dd>
</dl>
</li>
</ul>
<a id="openFuture()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>openFuture</h4>
<pre class="methodSignature">public&nbsp;<a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;&nbsp;openFuture()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#openFuture()">openFuture</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>Future</code> that will be completed when the remote opens this <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a>.</dd>
</dl>
</li>
</ul>
<a id="close()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;close()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#close()">Sender</a></code></span></div>
<div class="block">Requests a close of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> at the remote and waits until the Sender has been
fully closed or until the configured <a href="../SenderOptions.html#closeTimeout()"><code>SenderOptions.closeTimeout()</code></a> is exceeded.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>close</code>&nbsp;in interface&nbsp;<code>java.lang.AutoCloseable</code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#close()">close</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
</dl>
</li>
</ul>
<a id="close(org.apache.qpid.protonj2.client.ErrorCondition)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;close&#8203;(<a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client">ErrorCondition</a>&nbsp;error)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#close(org.apache.qpid.protonj2.client.ErrorCondition)">Sender</a></code></span></div>
<div class="block">Requests a close of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> at the remote and waits until the Sender has been
fully closed or until the configured <a href="../SenderOptions.html#closeTimeout()"><code>SenderOptions.closeTimeout()</code></a> is exceeded.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#close(org.apache.qpid.protonj2.client.ErrorCondition)">close</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>error</code> - The <a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client"><code>ErrorCondition</code></a> to transmit to the remote along with the close operation.</dd>
</dl>
</li>
</ul>
<a id="detach()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>detach</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;detach()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#detach()">Sender</a></code></span></div>
<div class="block">Requests a detach of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> at the remote and waits until the Sender has been
fully detached or until the configured <a href="../SenderOptions.html#closeTimeout()"><code>SenderOptions.closeTimeout()</code></a> is exceeded.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#detach()">detach</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
</dl>
</li>
</ul>
<a id="detach(org.apache.qpid.protonj2.client.ErrorCondition)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>detach</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;detach&#8203;(<a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client">ErrorCondition</a>&nbsp;error)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#detach(org.apache.qpid.protonj2.client.ErrorCondition)">Sender</a></code></span></div>
<div class="block">Requests a detach of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> at the remote and waits until the Sender has been
fully detached or until the configured <a href="../SenderOptions.html#closeTimeout()"><code>SenderOptions.closeTimeout()</code></a> is exceeded.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#detach(org.apache.qpid.protonj2.client.ErrorCondition)">detach</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>error</code> - The <a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client"><code>ErrorCondition</code></a> to transmit to the remote along with the detach operation.</dd>
</dl>
</li>
</ul>
<a id="closeAsync()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>closeAsync</h4>
<pre class="methodSignature">public&nbsp;<a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;&nbsp;closeAsync()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#closeAsync()">Sender</a></code></span></div>
<div class="block">Requests a close of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link at the remote and returns a <code>Future</code> that will be
completed once the link has been closed.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#closeAsync()">closeAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>Future</code> that will be completed when the remote closes this <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link.</dd>
</dl>
</li>
</ul>
<a id="closeAsync(org.apache.qpid.protonj2.client.ErrorCondition)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>closeAsync</h4>
<pre class="methodSignature">public&nbsp;<a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;&nbsp;closeAsync&#8203;(<a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client">ErrorCondition</a>&nbsp;error)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#closeAsync(org.apache.qpid.protonj2.client.ErrorCondition)">Sender</a></code></span></div>
<div class="block">Requests a close of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link at the remote and returns a <code>Future</code> that will be
completed once the link has been closed.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#closeAsync(org.apache.qpid.protonj2.client.ErrorCondition)">closeAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>error</code> - The <a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client"><code>ErrorCondition</code></a> to transmit to the remote along with the close operation.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>Future</code> that will be completed when the remote closes this <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link.</dd>
</dl>
</li>
</ul>
<a id="detachAsync()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>detachAsync</h4>
<pre class="methodSignature">public&nbsp;<a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;&nbsp;detachAsync()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#detachAsync()">Sender</a></code></span></div>
<div class="block">Requests a detach of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link at the remote and returns a <code>Future</code> that will be
completed once the link has been detached.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#detachAsync()">detachAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>Future</code> that will be completed when the remote detaches this <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link.</dd>
</dl>
</li>
</ul>
<a id="detachAsync(org.apache.qpid.protonj2.client.ErrorCondition)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>detachAsync</h4>
<pre class="methodSignature">public&nbsp;<a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;<a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a>&gt;&nbsp;detachAsync&#8203;(<a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client">ErrorCondition</a>&nbsp;error)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#detachAsync(org.apache.qpid.protonj2.client.ErrorCondition)">Sender</a></code></span></div>
<div class="block">Requests a detach of the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link at the remote and returns a <code>Future</code> that will be
completed once the link has been detached.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#detachAsync(org.apache.qpid.protonj2.client.ErrorCondition)">detachAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>error</code> - The <a href="../ErrorCondition.html" title="interface in org.apache.qpid.protonj2.client"><code>ErrorCondition</code></a> to transmit to the remote along with the detach operation.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>Future</code> that will be completed when the remote detaches this <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> link.</dd>
</dl>
</li>
</ul>
<a id="properties()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>properties</h4>
<pre class="methodSignature">public&nbsp;java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;properties()
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#properties()">Sender</a></code></span></div>
<div class="block">Returns the properties that the remote provided upon successfully opening the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a>. If the
attach has not completed yet this method will block to await the attach response which carries the remote
properties. If the remote provides no properties this method will return null.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#properties()">properties</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>any properties provided from the remote once the sender has successfully opened.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while obtaining the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> remote properties.</dd>
</dl>
</li>
</ul>
<a id="offeredCapabilities()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>offeredCapabilities</h4>
<pre class="methodSignature">public&nbsp;java.lang.String[]&nbsp;offeredCapabilities()
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#offeredCapabilities()">Sender</a></code></span></div>
<div class="block">Returns the offered capabilities that the remote provided upon successfully opening the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a>.
If the attach has not completed yet this method will block to await the attach response which carries the
remote offered capabilities. If the remote provides no capabilities this method will return null.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#offeredCapabilities()">offeredCapabilities</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>any capabilities provided from the remote once the sender has successfully opened.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while obtaining the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> remote offered capabilities.</dd>
</dl>
</li>
</ul>
<a id="desiredCapabilities()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>desiredCapabilities</h4>
<pre class="methodSignature">public&nbsp;java.lang.String[]&nbsp;desiredCapabilities()
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../Sender.html#desiredCapabilities()">Sender</a></code></span></div>
<div class="block">Returns the desired capabilities that the remote provided upon successfully opening the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a>.
If the attach has not completed yet this method will block to await the attach response which carries the
remote desired capabilities. If the remote provides no capabilities this method will return null.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../Sender.html#desiredCapabilities()">desiredCapabilities</a></code>&nbsp;in interface&nbsp;<code><a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client">Sender</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>any desired capabilities provided from the remote once the sender has successfully opened.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code> - if an error occurs while obtaining the <a href="../Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> remote desired capabilities.</dd>
</dl>
</li>
</ul>
<a id="addToTailOfBlockedQueue(org.apache.qpid.protonj2.client.impl.ClientOutgoingEnvelope)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addToTailOfBlockedQueue</h4>
<pre class="methodSignature">protected final&nbsp;void&nbsp;addToTailOfBlockedQueue&#8203;(<a href="ClientOutgoingEnvelope.html" title="class in org.apache.qpid.protonj2.client.impl">ClientOutgoingEnvelope</a>&nbsp;send)</pre>
</li>
</ul>
<a id="addToHeadOfBlockedQueue(org.apache.qpid.protonj2.client.impl.ClientOutgoingEnvelope)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addToHeadOfBlockedQueue</h4>
<pre class="methodSignature">protected final&nbsp;void&nbsp;addToHeadOfBlockedQueue&#8203;(<a href="ClientOutgoingEnvelope.html" title="class in org.apache.qpid.protonj2.client.impl">ClientOutgoingEnvelope</a>&nbsp;send)</pre>
</li>
</ul>
<a id="sendMessage(org.apache.qpid.protonj2.client.AdvancedMessage,java.util.Map,boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sendMessage</h4>
<pre class="methodSignature">protected&nbsp;<a href="../Tracker.html" title="interface in org.apache.qpid.protonj2.client">Tracker</a>&nbsp;sendMessage&#8203;(<a href="../AdvancedMessage.html" title="interface in org.apache.qpid.protonj2.client">AdvancedMessage</a>&lt;?&gt;&nbsp;message,
java.util.Map&lt;java.lang.String,&#8203;java.lang.Object&gt;&nbsp;deliveryAnnotations,
boolean&nbsp;waitForCredit)
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></code></dd>
</dl>
</li>
</ul>
<a id="notClosedOrFailed(org.apache.qpid.protonj2.client.futures.ClientFuture)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notClosedOrFailed</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;notClosedOrFailed&#8203;(<a href="../futures/ClientFuture.html" title="class in org.apache.qpid.protonj2.client.futures">ClientFuture</a>&lt;?&gt;&nbsp;request)</pre>
</li>
</ul>
<a id="checkClosedOrFailed()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>checkClosedOrFailed</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;checkClosedOrFailed()
throws <a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</a></pre>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../exceptions/ClientException.html" title="class in org.apache.qpid.protonj2.client.exceptions">ClientException</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/ClientStreamSender.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&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><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&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; 2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>