<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.10) on Tue Mar 30 10:43:01 CDT 2021 -->
<title>org.eclipse.jetty.client (Jetty :: Project 9.4.39.v20210325 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2021-03-30">
<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 (Jetty :: Project 9.4.39.v20210325 API)";
        }
    }
    catch(err) {
    }
//-->
var pathtoroot = "../../../../";
var useModuleDirectories = false;
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">
<div class="block">A <a href="api/ContentProvider.html" title="interface in org.eclipse.jetty.client.api"><code>ContentProvider</code></a> that notifies listeners that content is available.</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="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="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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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"><a href="HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a> 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="altColor">
<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="rowColor">
<th class="colFirst" scope="row"><a href="HttpContent.html" title="class in org.eclipse.jetty.client">HttpContent</a></th>
<td class="colLast">
<div class="block"><a href="HttpContent.html" title="class in org.eclipse.jetty.client"><code>HttpContent</code></a> is a stateful, linear representation of the request content provided
 by a <a href="api/ContentProvider.html" title="interface in org.eclipse.jetty.client.api"><code>ContentProvider</code></a> that can be traversed one-way to obtain content buffers to
 send to an HTTP server.</div>
</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="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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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"><a href="HttpSender.html" title="class in org.eclipse.jetty.client"><code>HttpSender</code></a> 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,org.eclipse.jetty.client.HttpContent,org.eclipse.jetty.util.Callback)"><code>HttpSender.sendHeaders(HttpExchange, HttpContent, Callback)</code></a> and
 <a href="HttpSender.html#sendContent(org.eclipse.jetty.client.HttpExchange,org.eclipse.jetty.client.HttpContent,org.eclipse.jetty.util.Callback)"><code>HttpSender.sendContent(HttpExchange, HttpContent, Callback)</code></a>.</div>
</td>
</tr>
<tr class="altColor">
<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="rowColor">
<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="altColor">
<th class="colFirst" scope="row"><a href="MultiplexHttpDestination.html" title="class in org.eclipse.jetty.client">MultiplexHttpDestination</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="Origin.html" title="class in org.eclipse.jetty.client">Origin</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<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="rowColor">
<th class="colFirst" scope="row"><a href="PoolingHttpDestination.html" title="class in org.eclipse.jetty.client">PoolingHttpDestination</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<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="altColor">
<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="rowColor">
<th class="colFirst" scope="row"><a href="TimeoutCompleteListener.html" title="class in org.eclipse.jetty.client">TimeoutCompleteListener</a></th>
<td class="colLast">&nbsp;</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>
