blob: bbdcb8e029db2ca4d0a2bb299d0381746719f8f0 [file] [log] [blame]
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) -->
<title>StreamSenderOptions (Qpid ProtonJ2 Parent 1.0.0-M18 API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: package: org.apache.qpid.protonj2.client, class: StreamSenderOptions">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/StreamSenderOptions.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../help-doc.html#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field-detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.qpid.protonj2.client</a></div>
<h1 title="Class StreamSenderOptions" class="title">Class StreamSenderOptions</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance"><a href="LinkOptions.html" title="class in org.apache.qpid.protonj2.client">org.apache.qpid.protonj2.client.LinkOptions</a>&lt;<a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a>&gt;
<div class="inheritance">org.apache.qpid.protonj2.client.StreamSenderOptions</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Cloneable.html" title="class or interface in java.lang" class="external-link">Cloneable</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">StreamSenderOptions</span>
<span class="extends-implements">extends <a href="LinkOptions.html" title="class in org.apache.qpid.protonj2.client">LinkOptions</a>&lt;<a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a>&gt;
implements <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Cloneable.html" title="class or interface in java.lang" class="external-link">Cloneable</a></span></div>
<div class="block">Options class that controls various aspects of a <a href="StreamSenderMessage.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSenderMessage</code></a> instance and how
a streamed message transfer is written.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Field Summary</h2>
<div class="caption"><span>Fields</span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Field</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>static final int</code></div>
<div class="col-second even-row-color"><code><a href="#DEFAULT_PENDING_WRITES_BUFFER_SIZE" class="member-name-link">DEFAULT_PENDING_WRITES_BUFFER_SIZE</a></code></div>
<div class="col-last even-row-color">
<div class="block">Defines the default pending write buffering size which is used to control how much outgoing
data can be buffered for local writing before the sender has back pressured applied to avoid
out of memory conditions due to overly large pending batched writes.</div>
</div>
<div class="col-first odd-row-color"><code>static final int</code></div>
<div class="col-second odd-row-color"><code><a href="#MIN_BUFFER_SIZE_LIMIT" class="member-name-link">MIN_BUFFER_SIZE_LIMIT</a></code></div>
<div class="col-last odd-row-color">
<div class="block">Defines the default minimum size that the context write buffer will allocate
which drives the interval auto flushing of written data for this context.</div>
</div>
</div>
</section>
</li>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">StreamSenderOptions</a>()</code></div>
<div class="col-last even-row-color">
<div class="block">Creates a <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance with default values for all options</div>
</div>
<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(org.apache.qpid.protonj2.client.StreamSenderOptions)" class="member-name-link">StreamSenderOptions</a><wbr>(<a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a>&nbsp;options)</code></div>
<div class="col-last odd-row-color">
<div class="block">Create a <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance that copies all configuration from the given
<a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#clone()" class="member-name-link">clone</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#copyInto(org.apache.qpid.protonj2.client.StreamSenderOptions)" class="member-name-link">copyInto</a><wbr>(<a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a>&nbsp;other)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Copy all options from this <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance into the instance
provided.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;<a href="../engine/DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine">DeliveryTagGenerator</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#deliveryTagGeneratorSupplier()" class="member-name-link">deliveryTagGeneratorSupplier</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#deliveryTagGeneratorSupplier(java.util.function.Supplier)" class="member-name-link">deliveryTagGeneratorSupplier</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;<a href="../engine/DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine">DeliveryTagGenerator</a>&gt;&nbsp;supplier)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Configures a <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link"><code>Supplier</code></a> which provides unique instances of <a href="../engine/DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine"><code>DeliveryTagGenerator</code></a> objects
for any <a href="StreamSender.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSender</code></a> created using these options.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#pendingWritesBufferSize()" class="member-name-link">pendingWritesBufferSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#pendingWritesBufferSize(int)" class="member-name-link">pendingWritesBufferSize</a><wbr>(int&nbsp;pendingWritesBufferSize)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets the overall number of bytes the stream sender will allow to be pending for write before applying
back pressure to the stream write caller.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>protected <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#self()" class="member-name-link">self</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>long</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#sendTimeout()" class="member-name-link">sendTimeout</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#sendTimeout(long)" class="member-name-link">sendTimeout</a><wbr>(long&nbsp;sendTimeout)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Configures the timeout used when awaiting a send operation to complete.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#sendTimeout(long,java.util.concurrent.TimeUnit)" class="member-name-link">sendTimeout</a><wbr>(long&nbsp;timeout,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/TimeUnit.html" title="class or interface in java.util.concurrent" class="external-link">TimeUnit</a>&nbsp;units)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Configures the timeout used when awaiting a send operation to complete.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#writeBufferSize()" class="member-name-link">writeBufferSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#writeBufferSize(int)" class="member-name-link">writeBufferSize</a><wbr>(int&nbsp;writeBufferSize)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Sets the overall number of bytes the stream sender will buffer before automatically flushing the
currently buffered bytes.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-org.apache.qpid.protonj2.client.LinkOptions">Methods inherited from class&nbsp;org.apache.qpid.protonj2.client.<a href="LinkOptions.html" title="class in org.apache.qpid.protonj2.client">LinkOptions</a></h3>
<code><a href="LinkOptions.html#autoSettle()">autoSettle</a>, <a href="LinkOptions.html#autoSettle(boolean)">autoSettle</a>, <a href="LinkOptions.html#closeTimeout()">closeTimeout</a>, <a href="LinkOptions.html#closeTimeout(long)">closeTimeout</a>, <a href="LinkOptions.html#closeTimeout(long,java.util.concurrent.TimeUnit)">closeTimeout</a>, <a href="LinkOptions.html#copyInto(org.apache.qpid.protonj2.client.LinkOptions)">copyInto</a>, <a href="LinkOptions.html#deliveryMode()">deliveryMode</a>, <a href="LinkOptions.html#deliveryMode(org.apache.qpid.protonj2.client.DeliveryMode)">deliveryMode</a>, <a href="LinkOptions.html#desiredCapabilities()">desiredCapabilities</a>, <a href="LinkOptions.html#desiredCapabilities(java.lang.String...)">desiredCapabilities</a>, <a href="LinkOptions.html#linkName()">linkName</a>, <a href="LinkOptions.html#linkName(java.lang.String)">linkName</a>, <a href="LinkOptions.html#offeredCapabilities()">offeredCapabilities</a>, <a href="LinkOptions.html#offeredCapabilities(java.lang.String...)">offeredCapabilities</a>, <a href="LinkOptions.html#openTimeout()">openTimeout</a>, <a href="LinkOptions.html#openTimeout(long)">openTimeout</a>, <a href="LinkOptions.html#openTimeout(long,java.util.concurrent.TimeUnit)">openTimeout</a>, <a href="LinkOptions.html#properties()">properties</a>, <a href="LinkOptions.html#properties(java.util.Map)">properties</a>, <a href="LinkOptions.html#requestTimeout()">requestTimeout</a>, <a href="LinkOptions.html#requestTimeout(long)">requestTimeout</a>, <a href="LinkOptions.html#requestTimeout(long,java.util.concurrent.TimeUnit)">requestTimeout</a>, <a href="LinkOptions.html#sourceOptions()">sourceOptions</a>, <a href="LinkOptions.html#targetOptions()">targetOptions</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Field Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="DEFAULT_PENDING_WRITES_BUFFER_SIZE">
<h3>DEFAULT_PENDING_WRITES_BUFFER_SIZE</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">DEFAULT_PENDING_WRITES_BUFFER_SIZE</span></div>
<div class="block">Defines the default pending write buffering size which is used to control how much outgoing
data can be buffered for local writing before the sender has back pressured applied to avoid
out of memory conditions due to overly large pending batched writes.</div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../../constant-values.html#org.apache.qpid.protonj2.client.StreamSenderOptions.DEFAULT_PENDING_WRITES_BUFFER_SIZE">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="MIN_BUFFER_SIZE_LIMIT">
<h3>MIN_BUFFER_SIZE_LIMIT</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">MIN_BUFFER_SIZE_LIMIT</span></div>
<div class="block">Defines the default minimum size that the context write buffer will allocate
which drives the interval auto flushing of written data for this context.</div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../../constant-values.html#org.apache.qpid.protonj2.client.StreamSenderOptions.MIN_BUFFER_SIZE_LIMIT">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;()">
<h3>StreamSenderOptions</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">StreamSenderOptions</span>()</div>
<div class="block">Creates a <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance with default values for all options</div>
</section>
</li>
<li>
<section class="detail" id="&lt;init&gt;(org.apache.qpid.protonj2.client.StreamSenderOptions)">
<h3>StreamSenderOptions</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">StreamSenderOptions</span><wbr><span class="parameters">(<a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a>&nbsp;options)</span></div>
<div class="block">Create a <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance that copies all configuration from the given
<a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>options</code> - The options instance to copy all configuration values from.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="clone()">
<h3>clone</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></span>&nbsp;<span class="element-name">clone</span>()</div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="copyInto(org.apache.qpid.protonj2.client.StreamSenderOptions)">
<h3>copyInto</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="return-type"><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></span>&nbsp;<span class="element-name">copyInto</span><wbr><span class="parameters">(<a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a>&nbsp;other)</span></div>
<div class="block">Copy all options from this <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance into the instance
provided.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>other</code> - the target of this copy operation.</dd>
<dt>Returns:</dt>
<dd>the <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance that was given.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="writeBufferSize()">
<h3>writeBufferSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">writeBufferSize</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the configured context write buffering limit for the associated <a href="StreamSender.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSender</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="writeBufferSize(int)">
<h3>writeBufferSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></span>&nbsp;<span class="element-name">writeBufferSize</span><wbr><span class="parameters">(int&nbsp;writeBufferSize)</span></div>
<div class="block">Sets the overall number of bytes the stream sender will buffer before automatically flushing the
currently buffered bytes. By default the stream sender implementation chooses a value for this
buffer limit based on the configured frame size limits of the connection.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>writeBufferSize</code> - The number of bytes that can be written before the context performs a flush operation.</dd>
<dt>Returns:</dt>
<dd>this <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="pendingWritesBufferSize()">
<h3>pendingWritesBufferSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">pendingWritesBufferSize</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the configured pending write buffering limit for the associated <a href="StreamSender.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSender</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="pendingWritesBufferSize(int)">
<h3>pendingWritesBufferSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></span>&nbsp;<span class="element-name">pendingWritesBufferSize</span><wbr><span class="parameters">(int&nbsp;pendingWritesBufferSize)</span></div>
<div class="block">Sets the overall number of bytes the stream sender will allow to be pending for write before applying
back pressure to the stream write caller. By default the stream sender implementation chooses a value
for this pending write limit based on the configured frame size limits of the connection. This is an
advanced option and should not be used unless the impact of doing so is understood by the user.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>pendingWritesBufferSize</code> - The number of bytes that can be pending for write before the sender applies back pressure.</dd>
<dt>Returns:</dt>
<dd>this <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="sendTimeout()">
<h3>sendTimeout</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name">sendTimeout</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the timeout used when awaiting a response from the remote when a resource is message send.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="sendTimeout(long)">
<h3>sendTimeout</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></span>&nbsp;<span class="element-name">sendTimeout</span><wbr><span class="parameters">(long&nbsp;sendTimeout)</span></div>
<div class="block">Configures the timeout used when awaiting a send operation to complete. A send will block if the
remote has not granted the <a href="Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> or the <a href="Session.html" title="interface in org.apache.qpid.protonj2.client"><code>Session</code></a> credit to do so, if the send blocks
for longer than this timeout the send call will fail with an <a href="exceptions/ClientSendTimedOutException.html" title="class in org.apache.qpid.protonj2.client.exceptions"><code>ClientSendTimedOutException</code></a>
exception to indicate that the send did not complete.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>sendTimeout</code> - Timeout value in milliseconds to wait for a remote response.</dd>
<dt>Returns:</dt>
<dd>this <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="sendTimeout(long,java.util.concurrent.TimeUnit)">
<h3>sendTimeout</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></span>&nbsp;<span class="element-name">sendTimeout</span><wbr><span class="parameters">(long&nbsp;timeout,
<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/TimeUnit.html" title="class or interface in java.util.concurrent" class="external-link">TimeUnit</a>&nbsp;units)</span></div>
<div class="block">Configures the timeout used when awaiting a send operation to complete. A send will block if the
remote has not granted the <a href="StreamSender.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSender</code></a> or the <a href="Session.html" title="interface in org.apache.qpid.protonj2.client"><code>Session</code></a> credit to do so, if the send blocks
for longer than this timeout the send call will fail with an <a href="exceptions/ClientSendTimedOutException.html" title="class in org.apache.qpid.protonj2.client.exceptions"><code>ClientSendTimedOutException</code></a>
exception to indicate that the send did not complete.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>timeout</code> - Timeout value to wait for a remote response.</dd>
<dd><code>units</code> - The <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/concurrent/TimeUnit.html" title="class or interface in java.util.concurrent" class="external-link"><code>TimeUnit</code></a> that defines the timeout span.</dd>
<dt>Returns:</dt>
<dd>this <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="deliveryTagGeneratorSupplier(java.util.function.Supplier)">
<h3>deliveryTagGeneratorSupplier</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></span>&nbsp;<span class="element-name">deliveryTagGeneratorSupplier</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;<a href="../engine/DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine">DeliveryTagGenerator</a>&gt;&nbsp;supplier)</span></div>
<div class="block">Configures a <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link"><code>Supplier</code></a> which provides unique instances of <a href="../engine/DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine"><code>DeliveryTagGenerator</code></a> objects
for any <a href="StreamSender.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSender</code></a> created using these options.
<p>
The client sender will use a default <a href="../engine/DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine"><code>DeliveryTagGenerator</code></a> under normal circumstances and the
user is not required to configure a <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link"><code>Supplier</code></a>. In some cases where the user is communicating
with a system that requires a specific format of delivery tag this option allows use of a custom
generator. The caller is responsible for providing a supplier that will create a unique instance of
a tag generator as they are not meant to be shared amongst senders. Once a sender has been created
the tag generator it uses cannot be changed so future calls to this method will not affect previously
created <a href="StreamSender.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSender</code></a> instances.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>supplier</code> - The <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link"><code>Supplier</code></a> of <a href="../engine/DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine"><code>DeliveryTagGenerator</code></a> instances.</dd>
<dt>Returns:</dt>
<dd>the <a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client"><code>StreamSenderOptions</code></a> instance that was given.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="deliveryTagGeneratorSupplier()">
<h3>deliveryTagGeneratorSupplier</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link">Supplier</a>&lt;<a href="../engine/DeliveryTagGenerator.html" title="interface in org.apache.qpid.protonj2.engine">DeliveryTagGenerator</a>&gt;</span>&nbsp;<span class="element-name">deliveryTagGeneratorSupplier</span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>the configured delivery tag <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/function/Supplier.html" title="class or interface in java.util.function" class="external-link"><code>Supplier</code></a> or null if none was set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="self()">
<h3>self</h3>
<div class="member-signature"><span class="modifiers">protected</span>&nbsp;<span class="return-type"><a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a></span>&nbsp;<span class="element-name">self</span>()</div>
<dl class="notes">
<dt>Specified by:</dt>
<dd><code><a href="LinkOptions.html#self()">self</a></code>&nbsp;in class&nbsp;<code><a href="LinkOptions.html" title="class in org.apache.qpid.protonj2.client">LinkOptions</a>&lt;<a href="StreamSenderOptions.html" title="class in org.apache.qpid.protonj2.client">StreamSenderOptions</a>&gt;</code></dd>
<dt>Returns:</dt>
<dd>the true derived type instance for use in this class.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2023 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>