blob: 6dce674aa4ac9609cfe36875f6082dd5853c04fc [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.11) on Mon Jun 14 16:40:44 EDT 2021 -->
<title>org.eclipse.jetty.client (Eclipse Jetty API Doc - v10.0.5)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2021-06-14">
<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="org.eclipse.jetty.client (Eclipse Jetty API Doc - v10.0.5)";
}
}
catch(err) {
}
//-->
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 class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.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>
<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="Package" class="title">Package&nbsp;org.eclipse.jetty.client</h1>
</div>
<div class="contentContainer">
<section role="region"><a id="package.description">
<!-- -->
</a>
<div class="block">Jetty Client : Implementation and Core Classes
This package provides APIs, utility classes and an implementation of an asynchronous HTTP client.
<p>
The core class is <a href="HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a>, which acts as a central configuration object (for example
for <a href="HttpClient.html#setIdleTimeout(long)"><code>idle timeouts</code></a>, <a href="HttpClient.html#setMaxConnectionsPerDestination(int)"><code>max connections per destination</code></a>, etc.) and as a factory for <a href="api/Request.html" title="interface in org.eclipse.jetty.client.api"><code>Request</code></a> objects.
<p>
The HTTP protocol is based on the request/response paradigm, a unit that in this implementation is called
<em>exchange</em> and is represented by <a href="HttpExchange.html" title="class in org.eclipse.jetty.client"><code>HttpExchange</code></a>.
An initial request may trigger a sequence of exchanges with one or more servers, called a <em>conversation</em>
and represented by <a href="HttpConversation.html" title="class in org.eclipse.jetty.client"><code>HttpConversation</code></a>. A typical example of a conversation is a redirect, where
upon a request for a resource URI, the server replies with a redirect (for example with the 303 status code)
to another URI. This conversation is made of a first exchange made of the original request and its 303 response,
and of a second exchange made of the request for the new URI and its 200 response.
<p>
<a href="HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a> holds a number of <a href="api/Destination.html" title="interface in org.eclipse.jetty.client.api"><code>destinations</code></a>, which in turn hold a number of
pooled <a href="api/Connection.html" title="interface in org.eclipse.jetty.client.api"><code>connections</code></a>.
<p>
When a request is sent, its exchange is associated to a connection, either taken from an idle queue or created
anew, and when both the request and response are completed, the exchange is disassociated from the connection.
Conversations may span multiple connections on different destinations, and therefore are maintained at the
<a href="HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a> level.
<p>
Applications may decide to send the request and wait for the response in a blocking way, using
<a href="api/Request.html#send()"><code>Request.send()</code></a>.
Alternatively, application may ask to be notified of response events asynchronously, using
<a href="api/Request.html#send(org.eclipse.jetty.client.api.Response.CompleteListener)"><code>Request.send(org.eclipse.jetty.client.api.Response.CompleteListener)</code></a>.</div>
</section>
<ul class="blockList">
<li class="blockList">
<table class="typeSummary">
<caption><span>Interface Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Interface</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="AsyncContentProvider.html" title="interface in org.eclipse.jetty.client">AsyncContentProvider</a></th>
<td class="colLast">Deprecated.
<div class="deprecationComment">no replacement, use <a href="api/Request.Content.html" title="interface in org.eclipse.jetty.client.api"><code>Request.Content</code></a> instead.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="AsyncContentProvider.Listener.html" title="interface in org.eclipse.jetty.client">AsyncContentProvider.Listener</a></th>
<td class="colLast">
<div class="block">A listener that is notified of content availability</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ConnectionPool.html" title="interface in org.eclipse.jetty.client">ConnectionPool</a></th>
<td class="colLast">
<div class="block">Client-side connection pool abstraction.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ConnectionPool.Factory.html" title="interface in org.eclipse.jetty.client">ConnectionPool.Factory</a></th>
<td class="colLast">
<div class="block">Factory for ConnectionPool instances.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ConnectionPool.Multiplexable.html" title="interface in org.eclipse.jetty.client">ConnectionPool.Multiplexable</a></th>
<td class="colLast">
<div class="block">Marks a connection pool as supporting multiplexed connections.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ContentDecoder.html" title="interface in org.eclipse.jetty.client">ContentDecoder</a></th>
<td class="colLast">
<div class="block"><a href="ContentDecoder.html" title="interface in org.eclipse.jetty.client"><code>ContentDecoder</code></a> decodes content bytes of a response.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="HttpClientTransport.html" title="interface in org.eclipse.jetty.client">HttpClientTransport</a></th>
<td class="colLast">
<div class="block"><a href="HttpClientTransport.html" title="interface in org.eclipse.jetty.client"><code>HttpClientTransport</code></a> represents what transport implementations should provide
in order to plug-in a different transport for <a href="HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="HttpDestination.Multiplexed.html" title="interface in org.eclipse.jetty.client">HttpDestination.Multiplexed</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="HttpUpgrader.html" title="interface in org.eclipse.jetty.client">HttpUpgrader</a></th>
<td class="colLast">
<div class="block">HttpUpgrader prepares a HTTP request to upgrade from one protocol to another,
and implements the upgrade mechanism.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="HttpUpgrader.Factory.html" title="interface in org.eclipse.jetty.client">HttpUpgrader.Factory</a></th>
<td class="colLast">
<div class="block">A factory for <a href="HttpUpgrader.html" title="interface in org.eclipse.jetty.client"><code>HttpUpgrader</code></a>s.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="IConnection.html" title="interface in org.eclipse.jetty.client">IConnection</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ProtocolHandler.html" title="interface in org.eclipse.jetty.client">ProtocolHandler</a></th>
<td class="colLast">
<div class="block">A protocol handler performs HTTP protocol operations on
behalf of the application, typically like a browser would.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="Synchronizable.html" title="interface in org.eclipse.jetty.client">Synchronizable</a></th>
<td class="colLast">
<div class="block">Implementations of this interface expose a lock object
via <a href="Synchronizable.html#getLock()"><code>Synchronizable.getLock()</code></a> so that callers can synchronize
externally on that lock:</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary">
<caption><span>Class Summary</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="AbstractConnectionPool.html" title="class in org.eclipse.jetty.client">AbstractConnectionPool</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="AbstractConnectorHttpClientTransport.html" title="class in org.eclipse.jetty.client">AbstractConnectorHttpClientTransport</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="AbstractHttpClientTransport.html" title="class in org.eclipse.jetty.client">AbstractHttpClientTransport</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="AuthenticationProtocolHandler.html" title="class in org.eclipse.jetty.client">AuthenticationProtocolHandler</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ContentDecoder.Factory.html" title="class in org.eclipse.jetty.client">ContentDecoder.Factory</a></th>
<td class="colLast">
<div class="block">Factory for <a href="ContentDecoder.html" title="interface in org.eclipse.jetty.client"><code>ContentDecoder</code></a>s; subclasses must implement <a href="ContentDecoder.Factory.html#newContentDecoder()"><code>ContentDecoder.Factory.newContentDecoder()</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ContinueProtocolHandler.html" title="class in org.eclipse.jetty.client">ContinueProtocolHandler</a></th>
<td class="colLast">
<div class="block">A protocol handler that handles the 100 response code.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="DuplexConnectionPool.html" title="class in org.eclipse.jetty.client">DuplexConnectionPool</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="DuplexHttpDestination.html" title="class in org.eclipse.jetty.client">DuplexHttpDestination</a></th>
<td class="colLast">
<div class="block">A destination for those network transports that are duplex (e.g.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="GZIPContentDecoder.html" title="class in org.eclipse.jetty.client">GZIPContentDecoder</a></th>
<td class="colLast">
<div class="block"><a href="ContentDecoder.html" title="interface in org.eclipse.jetty.client"><code>ContentDecoder</code></a> for the "gzip" encoding.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="GZIPContentDecoder.Factory.html" title="class in org.eclipse.jetty.client">GZIPContentDecoder.Factory</a></th>
<td class="colLast">
<div class="block">Specialized <a href="ContentDecoder.Factory.html" title="class in org.eclipse.jetty.client"><code>ContentDecoder.Factory</code></a> for the "gzip" encoding.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="HttpAuthenticationStore.html" title="class in org.eclipse.jetty.client">HttpAuthenticationStore</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="HttpChannel.html" title="class in org.eclipse.jetty.client">HttpChannel</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="HttpClient.html" title="class in org.eclipse.jetty.client">HttpClient</a></th>
<td class="colLast">
<div class="block">HttpClient provides an efficient, asynchronous, non-blocking implementation
to perform HTTP requests to a server through a simple API that offers also blocking semantic.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="HttpConnection.html" title="class in org.eclipse.jetty.client">HttpConnection</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="HttpContentResponse.html" title="class in org.eclipse.jetty.client">HttpContentResponse</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="HttpConversation.html" title="class in org.eclipse.jetty.client">HttpConversation</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="HttpDestination.html" title="class in org.eclipse.jetty.client">HttpDestination</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="HttpProxy.html" title="class in org.eclipse.jetty.client">HttpProxy</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="HttpProxy.TunnelRequest.html" title="class in org.eclipse.jetty.client">HttpProxy.TunnelRequest</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="HttpReceiver.html" title="class in org.eclipse.jetty.client">HttpReceiver</a></th>
<td class="colLast">
<div class="block"><a href="HttpReceiver.html" title="class in org.eclipse.jetty.client"><code>HttpReceiver</code></a> provides the abstract code to implement the various steps of the receive of HTTP responses.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="HttpRedirector.html" title="class in org.eclipse.jetty.client">HttpRedirector</a></th>
<td class="colLast">
<div class="block">Utility class that handles HTTP redirects.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="HttpRequest.html" title="class in org.eclipse.jetty.client">HttpRequest</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="HttpResponse.html" title="class in org.eclipse.jetty.client">HttpResponse</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="HttpSender.html" title="class in org.eclipse.jetty.client">HttpSender</a></th>
<td class="colLast">
<div class="block">HttpSender abstracts the algorithm to send HTTP requests, so that subclasses only
implement the transport-specific code to send requests over the wire, implementing
<a href="HttpSender.html#sendHeaders(org.eclipse.jetty.client.HttpExchange,java.nio.ByteBuffer,boolean,org.eclipse.jetty.util.Callback)"><code>HttpSender.sendHeaders(HttpExchange, ByteBuffer, boolean, Callback)</code></a> and
<a href="HttpSender.html#sendContent(org.eclipse.jetty.client.HttpExchange,java.nio.ByteBuffer,boolean,org.eclipse.jetty.util.Callback)"><code>HttpSender.sendContent(HttpExchange, ByteBuffer, boolean, Callback)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="LeakTrackingConnectionPool.html" title="class in org.eclipse.jetty.client">LeakTrackingConnectionPool</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="MultiplexConnectionPool.html" title="class in org.eclipse.jetty.client">MultiplexConnectionPool</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="MultiplexHttpDestination.html" title="class in org.eclipse.jetty.client">MultiplexHttpDestination</a></th>
<td class="colLast">
<div class="block">A destination for those transports that are multiplex (e.g.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="Origin.html" title="class in org.eclipse.jetty.client">Origin</a></th>
<td class="colLast">
<div class="block">Class that groups the elements that uniquely identify a destination.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="Origin.Address.html" title="class in org.eclipse.jetty.client">Origin.Address</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="Origin.Protocol.html" title="class in org.eclipse.jetty.client">Origin.Protocol</a></th>
<td class="colLast">
<div class="block">The representation of a network protocol.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ProtocolHandlers.html" title="class in org.eclipse.jetty.client">ProtocolHandlers</a></th>
<td class="colLast">
<div class="block">A container for <a href="ProtocolHandler.html" title="interface in org.eclipse.jetty.client"><code>ProtocolHandler</code></a>s accessible from <a href="HttpClient.html#getProtocolHandlers()"><code>HttpClient.getProtocolHandlers()</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ProxyAuthenticationProtocolHandler.html" title="class in org.eclipse.jetty.client">ProxyAuthenticationProtocolHandler</a></th>
<td class="colLast">
<div class="block">A protocol handler that handles the 401 response code
in association with the <code>Proxy-Authenticate</code> header.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ProxyConfiguration.html" title="class in org.eclipse.jetty.client">ProxyConfiguration</a></th>
<td class="colLast">
<div class="block">The configuration of the forward proxy to use with <a href="HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ProxyConfiguration.Proxy.html" title="class in org.eclipse.jetty.client">ProxyConfiguration.Proxy</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ProxyProtocolClientConnectionFactory.html" title="class in org.eclipse.jetty.client">ProxyProtocolClientConnectionFactory</a></th>
<td class="colLast">
<div class="block">ClientConnectionFactory for the
<a href="http://www.haproxy.org/download/2.1/doc/proxy-protocol.txt">PROXY protocol</a>.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ProxyProtocolClientConnectionFactory.ProxyProtocolConnection.html" title="class in org.eclipse.jetty.client">ProxyProtocolClientConnectionFactory.ProxyProtocolConnection</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ProxyProtocolClientConnectionFactory.V1.html" title="class in org.eclipse.jetty.client">ProxyProtocolClientConnectionFactory.V1</a></th>
<td class="colLast">
<div class="block">A ClientConnectionFactory for the PROXY protocol version 1.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ProxyProtocolClientConnectionFactory.V1.Tag.html" title="class in org.eclipse.jetty.client">ProxyProtocolClientConnectionFactory.V1.Tag</a></th>
<td class="colLast">
<div class="block">PROXY protocol version 1 metadata holder to be used in conjunction
with <a href="api/Request.html#tag(java.lang.Object)"><code>Request.tag(Object)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ProxyProtocolClientConnectionFactory.V2.html" title="class in org.eclipse.jetty.client">ProxyProtocolClientConnectionFactory.V2</a></th>
<td class="colLast">
<div class="block">A ClientConnectionFactory for the PROXY protocol version 2.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ProxyProtocolClientConnectionFactory.V2.Tag.html" title="class in org.eclipse.jetty.client">ProxyProtocolClientConnectionFactory.V2.Tag</a></th>
<td class="colLast">
<div class="block">PROXY protocol version 2 metadata holder to be used in conjunction
with <a href="api/Request.html#tag(java.lang.Object)"><code>Request.tag(Object)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ProxyProtocolClientConnectionFactory.V2.Tag.TLV.html" title="class in org.eclipse.jetty.client">ProxyProtocolClientConnectionFactory.V2.Tag.TLV</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RandomConnectionPool.html" title="class in org.eclipse.jetty.client">RandomConnectionPool</a></th>
<td class="colLast">
<div class="block">A <a href="ConnectionPool.html" title="interface in org.eclipse.jetty.client"><code>ConnectionPool</code></a> that provides connections
randomly among the ones that are available.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="RedirectProtocolHandler.html" title="class in org.eclipse.jetty.client">RedirectProtocolHandler</a></th>
<td class="colLast">
<div class="block">A protocol handler that handles redirect status codes 301, 302, 303, 307 and 308.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RequestNotifier.html" title="class in org.eclipse.jetty.client">RequestNotifier</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ResponseNotifier.html" title="class in org.eclipse.jetty.client">ResponseNotifier</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="RoundRobinConnectionPool.html" title="class in org.eclipse.jetty.client">RoundRobinConnectionPool</a></th>
<td class="colLast">
<div class="block">A <a href="ConnectionPool.html" title="interface in org.eclipse.jetty.client"><code>ConnectionPool</code></a> that attempts to provide connections using a round-robin algorithm.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="SendFailure.html" title="class in org.eclipse.jetty.client">SendFailure</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="Socks4Proxy.html" title="class in org.eclipse.jetty.client">Socks4Proxy</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="Socks4Proxy.Socks4ProxyClientConnectionFactory.html" title="class in org.eclipse.jetty.client">Socks4Proxy.Socks4ProxyClientConnectionFactory</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="TimeoutCompleteListener.html" title="class in org.eclipse.jetty.client">TimeoutCompleteListener</a></th>
<td class="colLast">Deprecated.
<div class="deprecationComment">Do not use it, use <a href="../io/CyclicTimeouts.html" title="class in org.eclipse.jetty.io"><code>CyclicTimeouts</code></a> instead.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="UpgradeProtocolHandler.html" title="class in org.eclipse.jetty.client">UpgradeProtocolHandler</a></th>
<td class="colLast">
<div class="block">A protocol handler that handles HTTP 101 responses.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ValidatingConnectionPool.html" title="class in org.eclipse.jetty.client">ValidatingConnectionPool</a></th>
<td class="colLast">
<div class="block">A connection pool that validates connections before
making them available for use.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="WWWAuthenticationProtocolHandler.html" title="class in org.eclipse.jetty.client">WWWAuthenticationProtocolHandler</a></th>
<td class="colLast">
<div class="block">A protocol handler that handles the 401 response code
in association with the <code>WWW-Authenticate</code> header.</div>
</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary">
<caption><span>Enum Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Enum</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ProxyProtocolClientConnectionFactory.V2.Tag.Command.html" title="enum in org.eclipse.jetty.client">ProxyProtocolClientConnectionFactory.V2.Tag.Command</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="ProxyProtocolClientConnectionFactory.V2.Tag.Family.html" title="enum in org.eclipse.jetty.client">ProxyProtocolClientConnectionFactory.V2.Tag.Family</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="ProxyProtocolClientConnectionFactory.V2.Tag.Protocol.html" title="enum in org.eclipse.jetty.client">ProxyProtocolClientConnectionFactory.V2.Tag.Protocol</a></th>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<table class="typeSummary">
<caption><span>Exception Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Exception</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="HttpRequestException.html" title="class in org.eclipse.jetty.client">HttpRequestException</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="HttpResponseException.html" title="class in org.eclipse.jetty.client">HttpResponseException</a></th>
<td class="colLast">&nbsp;</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 class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.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>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 1995&#x2013;2021 <a href="https://webtide.com">Webtide</a>. All rights reserved.</small></p>
</footer>
</body>
</html>