<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>Uses of Package org.apache.qpid.protonj2.client (Qpid ProtonJ2 Parent 1.0.0-M9 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Uses of Package org.apache.qpid.protonj2.client (Qpid ProtonJ2 Parent 1.0.0-M9 API)";
        }
    }
    catch(err) {
    }
//-->
</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</li>
<li class="navBarCell1Rev">Use</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<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>
<main role="main">
<div class="header">
<h1 title="Uses of Package org.apache.qpid.protonj2.client" class="title">Uses of Package<br>org.apache.qpid.protonj2.client</h1>
</div>
<div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table class="useSummary">
<caption><span>Packages that use <a href="package-summary.html">org.apache.qpid.protonj2.client</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.qpid.protonj2.client">org.apache.qpid.protonj2.client</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.qpid.protonj2.client.exceptions">org.apache.qpid.protonj2.client.exceptions</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.qpid.protonj2.client.impl">org.apache.qpid.protonj2.client.impl</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="#org.apache.qpid.protonj2.client.transport">org.apache.qpid.protonj2.client.transport</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="#org.apache.qpid.protonj2.client.util">org.apache.qpid.protonj2.client.util</a></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a id="org.apache.qpid.protonj2.client">
<!--   -->
</a>
<table class="useSummary">
<caption><span>Classes in <a href="package-summary.html">org.apache.qpid.protonj2.client</a> used by <a href="package-summary.html">org.apache.qpid.protonj2.client</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/AdvancedMessage.html#org.apache.qpid.protonj2.client">AdvancedMessage</a></th>
<td class="colLast">
<div class="block">Advanced AMQP Message object that provides a thin abstraction to raw AMQP types</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Client.html#org.apache.qpid.protonj2.client">Client</a></th>
<td class="colLast">
<div class="block">The Container that hosts AMQP Connections.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/ClientOptions.html#org.apache.qpid.protonj2.client">ClientOptions</a></th>
<td class="colLast">
<div class="block">Container Options for customizing the behavior of the Container</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Connection.html#org.apache.qpid.protonj2.client">Connection</a></th>
<td class="colLast">
<div class="block">Top level <a href="Connection.html" title="interface in org.apache.qpid.protonj2.client"><code>Connection</code></a> object that can be used as a stand alone API for sending
 messages and creating <a href="Receiver.html" title="interface in org.apache.qpid.protonj2.client"><code>Receiver</code></a> instances for message consumption.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/ConnectionEvent.html#org.apache.qpid.protonj2.client">ConnectionEvent</a></th>
<td class="colLast">
<div class="block">An event object that accompanies events fired to handlers configured in the
 <a href="ConnectionOptions.html" title="class in org.apache.qpid.protonj2.client"><code>ConnectionOptions</code></a> which are signaled during specific <a href="Connection.html" title="interface in org.apache.qpid.protonj2.client"><code>Connection</code></a>
 event points.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/ConnectionOptions.html#org.apache.qpid.protonj2.client">ConnectionOptions</a></th>
<td class="colLast">
<div class="block">Options that control the behavior of the <a href="Connection.html" title="interface in org.apache.qpid.protonj2.client"><code>Connection</code></a> created from them.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/Delivery.html#org.apache.qpid.protonj2.client">Delivery</a></th>
<td class="colLast">
<div class="block">Incoming Delivery type that provides access to the message and the delivery
 data along with methods for settling the delivery when processing completes.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/DeliveryMode.html#org.apache.qpid.protonj2.client">DeliveryMode</a></th>
<td class="colLast">
<div class="block">Control the message delivery guarantee for senders and receivers</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/DeliveryState.html#org.apache.qpid.protonj2.client">DeliveryState</a></th>
<td class="colLast">
<div class="block">Conveys the outcome of a Delivery either incoming or outgoing.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/DeliveryState.Type.html#org.apache.qpid.protonj2.client">DeliveryState.Type</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/DisconnectionEvent.html#org.apache.qpid.protonj2.client">DisconnectionEvent</a></th>
<td class="colLast">
<div class="block">An event object that accompanies events fired to handlers configured in the
 <a href="ConnectionOptions.html" title="class in org.apache.qpid.protonj2.client"><code>ConnectionOptions</code></a> which are signaled during specific <a href="Connection.html" title="interface in org.apache.qpid.protonj2.client"><code>Connection</code></a>
 life-cycle stages.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/DistributionMode.html#org.apache.qpid.protonj2.client">DistributionMode</a></th>
<td class="colLast">
<div class="block">Control whether messages are browsed or consumed.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/DurabilityMode.html#org.apache.qpid.protonj2.client">DurabilityMode</a></th>
<td class="colLast">
<div class="block">Control the persistence of source or target state.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/ErrorCondition.html#org.apache.qpid.protonj2.client">ErrorCondition</a></th>
<td class="colLast">
<div class="block">Conveys the error value used to inform the user of why an endpoint
 was closed or a delivery rejected.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/ExpiryPolicy.html#org.apache.qpid.protonj2.client">ExpiryPolicy</a></th>
<td class="colLast">
<div class="block">Control when the clock for expiration begins.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Link.html#org.apache.qpid.protonj2.client">Link</a></th>
<td class="colLast">
<div class="block">Base for all AMQP link types (Sender, Receiver etc).</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/LinkOptions.html#org.apache.qpid.protonj2.client">LinkOptions</a></th>
<td class="colLast">
<div class="block">Base options that are applied to AMQP link types.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Message.html#org.apache.qpid.protonj2.client">Message</a></th>
<td class="colLast">
<div class="block">Message object that provides a high level abstraction to raw AMQP types</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/NextReceiverPolicy.html#org.apache.qpid.protonj2.client">NextReceiverPolicy</a></th>
<td class="colLast">
<div class="block">Determines the behavior of a Session when the next receiver method is called
 on that session.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/OutputStreamOptions.html#org.apache.qpid.protonj2.client">OutputStreamOptions</a></th>
<td class="colLast">
<div class="block">Options class that controls various aspects of a <a href="https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/OutputStream.html?is-external=true" title="class or interface in java.io" class="externalLink"><code>OutputStream</code></a> instance created to write
 the contents of a section of a <a href="StreamSenderMessage.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSenderMessage</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/Receiver.html#org.apache.qpid.protonj2.client">Receiver</a></th>
<td class="colLast">
<div class="block">AMQP Receiver that provides an interface to receive complete Deliveries from a remote
 peer.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/ReceiverOptions.html#org.apache.qpid.protonj2.client">ReceiverOptions</a></th>
<td class="colLast">
<div class="block">Options that control the behavior of the <a href="Receiver.html" title="interface in org.apache.qpid.protonj2.client"><code>Receiver</code></a> created from them.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/ReconnectLocation.html#org.apache.qpid.protonj2.client">ReconnectLocation</a></th>
<td class="colLast">
<div class="block">Represents a reconnection host used to track location and configuration
 for individual remote hosts that can be used to re-establish a connection
 on loss of connectivity.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/ReconnectOptions.html#org.apache.qpid.protonj2.client">ReconnectOptions</a></th>
<td class="colLast">
<div class="block">Options that control the reconnection behavior of a client <a href="Connection.html" title="interface in org.apache.qpid.protonj2.client"><code>Connection</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/SaslOptions.html#org.apache.qpid.protonj2.client">SaslOptions</a></th>
<td class="colLast">
<div class="block">Connection options that are applied to the SASL layer.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Sender.html#org.apache.qpid.protonj2.client">Sender</a></th>
<td class="colLast">
<div class="block">AMQP Sender that provides an API for sending complete Message payload data.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/SenderOptions.html#org.apache.qpid.protonj2.client">SenderOptions</a></th>
<td class="colLast">
<div class="block">Options that control the behavior of a <a href="Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> created from them.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Session.html#org.apache.qpid.protonj2.client">Session</a></th>
<td class="colLast">
<div class="block">Session object used to create <a href="Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> and <a href="Receiver.html" title="interface in org.apache.qpid.protonj2.client"><code>Receiver</code></a> instances.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/SessionOptions.html#org.apache.qpid.protonj2.client">SessionOptions</a></th>
<td class="colLast">
<div class="block">Options that control the behavior of the <a href="Session.html" title="interface in org.apache.qpid.protonj2.client"><code>Session</code></a> created from them.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Source.html#org.apache.qpid.protonj2.client">Source</a></th>
<td class="colLast">
<div class="block">The Source for messages.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/SourceOptions.html#org.apache.qpid.protonj2.client">SourceOptions</a></th>
<td class="colLast">
<div class="block">Options type that carries configuration for link Source types.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/SslOptions.html#org.apache.qpid.protonj2.client">SslOptions</a></th>
<td class="colLast">
<div class="block">Options for configuration of the client SSL layer</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/StreamDelivery.html#org.apache.qpid.protonj2.client">StreamDelivery</a></th>
<td class="colLast">
<div class="block">A specialized <a href="StreamDelivery.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamDelivery</code></a> type that is returned from the <a href="StreamReceiver.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamReceiver</code></a>
 which can be used to read incoming large messages that are streamed via multiple incoming
 AMQP <a href="../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frames.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/StreamReceiver.html#org.apache.qpid.protonj2.client">StreamReceiver</a></th>
<td class="colLast">
<div class="block">A receiver of large message content that is delivered in multiple <a href="../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frames from
 the remote.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/StreamReceiverMessage.html#org.apache.qpid.protonj2.client">StreamReceiverMessage</a></th>
<td class="colLast">
<div class="block">A specialized <a href="Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a> type that represents a streamed delivery possibly
 spanning many incoming <a href="../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frames from the remote peer.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/StreamReceiverOptions.html#org.apache.qpid.protonj2.client">StreamReceiverOptions</a></th>
<td class="colLast">
<div class="block">Options class that controls various aspects of a <a href="StreamReceiver.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamReceiver</code></a> instance and how
 a streamed message transfer is written.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/StreamSender.html#org.apache.qpid.protonj2.client">StreamSender</a></th>
<td class="colLast">
<div class="block">Sending link implementation that allows sending of large message payload data in
 multiple transfers to reduce memory overhead of large message sends.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/StreamSenderMessage.html#org.apache.qpid.protonj2.client">StreamSenderMessage</a></th>
<td class="colLast">
<div class="block">Streaming Message Tracker object used to operate on and track the state of a streamed message
 at the remote.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/StreamSenderOptions.html#org.apache.qpid.protonj2.client">StreamSenderOptions</a></th>
<td class="colLast">
<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>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/StreamTracker.html#org.apache.qpid.protonj2.client">StreamTracker</a></th>
<td class="colLast">
<div class="block">Special StreamSender related <a href="Tracker.html" title="interface in org.apache.qpid.protonj2.client"><code>Tracker</code></a> that is linked to any <a href="StreamSenderMessage.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSenderMessage</code></a>
 instance and provides the <a href="Tracker.html" title="interface in org.apache.qpid.protonj2.client"><code>Tracker</code></a> functions for those types of messages.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/Target.html#org.apache.qpid.protonj2.client">Target</a></th>
<td class="colLast">
<div class="block">The Target of messages.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/TargetOptions.html#org.apache.qpid.protonj2.client">TargetOptions</a></th>
<td class="colLast">
<div class="block">Options type that carries configuration for link Target types.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/TerminusOptions.html#org.apache.qpid.protonj2.client">TerminusOptions</a></th>
<td class="colLast">
<div class="block">Base options type for configuration of <a href="../types/messaging/Source.html" title="class in org.apache.qpid.protonj2.types.messaging"><code>Source</code></a> and <a href="../types/messaging/Target.html" title="class in org.apache.qpid.protonj2.types.messaging"><code>Target</code></a> types
 used by <a href="Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> and <a href="Receiver.html" title="interface in org.apache.qpid.protonj2.client"><code>Receiver</code></a> end points.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Tracker.html#org.apache.qpid.protonj2.client">Tracker</a></th>
<td class="colLast">
<div class="block">Tracker object used to track the state of a sent <a href="Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a> at the remote
 and allows for local settlement and disposition management.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/TransportOptions.html#org.apache.qpid.protonj2.client">TransportOptions</a></th>
<td class="colLast">
<div class="block">Encapsulates all the Transport options in one configuration object.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a id="org.apache.qpid.protonj2.client.exceptions">
<!--   -->
</a>
<table class="useSummary">
<caption><span>Classes in <a href="package-summary.html">org.apache.qpid.protonj2.client</a> used by <a href="exceptions/package-summary.html">org.apache.qpid.protonj2.client.exceptions</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/DeliveryState.html#org.apache.qpid.protonj2.client.exceptions">DeliveryState</a></th>
<td class="colLast">
<div class="block">Conveys the outcome of a Delivery either incoming or outgoing.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/ErrorCondition.html#org.apache.qpid.protonj2.client.exceptions">ErrorCondition</a></th>
<td class="colLast">
<div class="block">Conveys the error value used to inform the user of why an endpoint
 was closed or a delivery rejected.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a id="org.apache.qpid.protonj2.client.impl">
<!--   -->
</a>
<table class="useSummary">
<caption><span>Classes in <a href="package-summary.html">org.apache.qpid.protonj2.client</a> used by <a href="impl/package-summary.html">org.apache.qpid.protonj2.client.impl</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/AdvancedMessage.html#org.apache.qpid.protonj2.client.impl">AdvancedMessage</a></th>
<td class="colLast">
<div class="block">Advanced AMQP Message object that provides a thin abstraction to raw AMQP types</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Client.html#org.apache.qpid.protonj2.client.impl">Client</a></th>
<td class="colLast">
<div class="block">The Container that hosts AMQP Connections.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/ClientOptions.html#org.apache.qpid.protonj2.client.impl">ClientOptions</a></th>
<td class="colLast">
<div class="block">Container Options for customizing the behavior of the Container</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Connection.html#org.apache.qpid.protonj2.client.impl">Connection</a></th>
<td class="colLast">
<div class="block">Top level <a href="Connection.html" title="interface in org.apache.qpid.protonj2.client"><code>Connection</code></a> object that can be used as a stand alone API for sending
 messages and creating <a href="Receiver.html" title="interface in org.apache.qpid.protonj2.client"><code>Receiver</code></a> instances for message consumption.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/ConnectionOptions.html#org.apache.qpid.protonj2.client.impl">ConnectionOptions</a></th>
<td class="colLast">
<div class="block">Options that control the behavior of the <a href="Connection.html" title="interface in org.apache.qpid.protonj2.client"><code>Connection</code></a> created from them.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Delivery.html#org.apache.qpid.protonj2.client.impl">Delivery</a></th>
<td class="colLast">
<div class="block">Incoming Delivery type that provides access to the message and the delivery
 data along with methods for settling the delivery when processing completes.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/DeliveryState.html#org.apache.qpid.protonj2.client.impl">DeliveryState</a></th>
<td class="colLast">
<div class="block">Conveys the outcome of a Delivery either incoming or outgoing.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/DeliveryState.Type.html#org.apache.qpid.protonj2.client.impl">DeliveryState.Type</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/ErrorCondition.html#org.apache.qpid.protonj2.client.impl">ErrorCondition</a></th>
<td class="colLast">
<div class="block">Conveys the error value used to inform the user of why an endpoint
 was closed or a delivery rejected.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Link.html#org.apache.qpid.protonj2.client.impl">Link</a></th>
<td class="colLast">
<div class="block">Base for all AMQP link types (Sender, Receiver etc).</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/LinkOptions.html#org.apache.qpid.protonj2.client.impl">LinkOptions</a></th>
<td class="colLast">
<div class="block">Base options that are applied to AMQP link types.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Message.html#org.apache.qpid.protonj2.client.impl">Message</a></th>
<td class="colLast">
<div class="block">Message object that provides a high level abstraction to raw AMQP types</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/NextReceiverPolicy.html#org.apache.qpid.protonj2.client.impl">NextReceiverPolicy</a></th>
<td class="colLast">
<div class="block">Determines the behavior of a Session when the next receiver method is called
 on that session.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Receiver.html#org.apache.qpid.protonj2.client.impl">Receiver</a></th>
<td class="colLast">
<div class="block">AMQP Receiver that provides an interface to receive complete Deliveries from a remote
 peer.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/ReceiverOptions.html#org.apache.qpid.protonj2.client.impl">ReceiverOptions</a></th>
<td class="colLast">
<div class="block">Options that control the behavior of the <a href="Receiver.html" title="interface in org.apache.qpid.protonj2.client"><code>Receiver</code></a> created from them.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Sender.html#org.apache.qpid.protonj2.client.impl">Sender</a></th>
<td class="colLast">
<div class="block">AMQP Sender that provides an API for sending complete Message payload data.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/SenderOptions.html#org.apache.qpid.protonj2.client.impl">SenderOptions</a></th>
<td class="colLast">
<div class="block">Options that control the behavior of a <a href="Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> created from them.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Session.html#org.apache.qpid.protonj2.client.impl">Session</a></th>
<td class="colLast">
<div class="block">Session object used to create <a href="Sender.html" title="interface in org.apache.qpid.protonj2.client"><code>Sender</code></a> and <a href="Receiver.html" title="interface in org.apache.qpid.protonj2.client"><code>Receiver</code></a> instances.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/SessionOptions.html#org.apache.qpid.protonj2.client.impl">SessionOptions</a></th>
<td class="colLast">
<div class="block">Options that control the behavior of the <a href="Session.html" title="interface in org.apache.qpid.protonj2.client"><code>Session</code></a> created from them.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Source.html#org.apache.qpid.protonj2.client.impl">Source</a></th>
<td class="colLast">
<div class="block">The Source for messages.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/StreamDelivery.html#org.apache.qpid.protonj2.client.impl">StreamDelivery</a></th>
<td class="colLast">
<div class="block">A specialized <a href="StreamDelivery.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamDelivery</code></a> type that is returned from the <a href="StreamReceiver.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamReceiver</code></a>
 which can be used to read incoming large messages that are streamed via multiple incoming
 AMQP <a href="../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frames.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/StreamReceiver.html#org.apache.qpid.protonj2.client.impl">StreamReceiver</a></th>
<td class="colLast">
<div class="block">A receiver of large message content that is delivered in multiple <a href="../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frames from
 the remote.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/StreamReceiverMessage.html#org.apache.qpid.protonj2.client.impl">StreamReceiverMessage</a></th>
<td class="colLast">
<div class="block">A specialized <a href="Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a> type that represents a streamed delivery possibly
 spanning many incoming <a href="../types/transport/Transfer.html" title="class in org.apache.qpid.protonj2.types.transport"><code>Transfer</code></a> frames from the remote peer.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/StreamReceiverOptions.html#org.apache.qpid.protonj2.client.impl">StreamReceiverOptions</a></th>
<td class="colLast">
<div class="block">Options class that controls various aspects of a <a href="StreamReceiver.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamReceiver</code></a> instance and how
 a streamed message transfer is written.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/StreamSender.html#org.apache.qpid.protonj2.client.impl">StreamSender</a></th>
<td class="colLast">
<div class="block">Sending link implementation that allows sending of large message payload data in
 multiple transfers to reduce memory overhead of large message sends.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/StreamSenderOptions.html#org.apache.qpid.protonj2.client.impl">StreamSenderOptions</a></th>
<td class="colLast">
<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>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/StreamTracker.html#org.apache.qpid.protonj2.client.impl">StreamTracker</a></th>
<td class="colLast">
<div class="block">Special StreamSender related <a href="Tracker.html" title="interface in org.apache.qpid.protonj2.client"><code>Tracker</code></a> that is linked to any <a href="StreamSenderMessage.html" title="interface in org.apache.qpid.protonj2.client"><code>StreamSenderMessage</code></a>
 instance and provides the <a href="Tracker.html" title="interface in org.apache.qpid.protonj2.client"><code>Tracker</code></a> functions for those types of messages.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/Target.html#org.apache.qpid.protonj2.client.impl">Target</a></th>
<td class="colLast">
<div class="block">The Target of messages.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/Tracker.html#org.apache.qpid.protonj2.client.impl">Tracker</a></th>
<td class="colLast">
<div class="block">Tracker object used to track the state of a sent <a href="Message.html" title="interface in org.apache.qpid.protonj2.client"><code>Message</code></a> at the remote
 and allows for local settlement and disposition management.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a id="org.apache.qpid.protonj2.client.transport">
<!--   -->
</a>
<table class="useSummary">
<caption><span>Classes in <a href="package-summary.html">org.apache.qpid.protonj2.client</a> used by <a href="transport/package-summary.html">org.apache.qpid.protonj2.client.transport</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/SslOptions.html#org.apache.qpid.protonj2.client.transport">SslOptions</a></th>
<td class="colLast">
<div class="block">Options for configuration of the client SSL layer</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="class-use/TransportOptions.html#org.apache.qpid.protonj2.client.transport">TransportOptions</a></th>
<td class="colLast">
<div class="block">Encapsulates all the Transport options in one configuration object.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a id="org.apache.qpid.protonj2.client.util">
<!--   -->
</a>
<table class="useSummary">
<caption><span>Classes in <a href="package-summary.html">org.apache.qpid.protonj2.client</a> used by <a href="util/package-summary.html">org.apache.qpid.protonj2.client.util</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="class-use/ReconnectLocation.html#org.apache.qpid.protonj2.client.util">ReconnectLocation</a></th>
<td class="colLast">
<div class="block">Represents a reconnection host used to track location and configuration
 for individual remote hosts that can be used to re-establish a connection
 on loss of connectivity.</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
</main>
<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</li>
<li class="navBarCell1Rev">Use</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2022 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>
