blob: 442033d5f9c326ef13f565a664ae7d6a49361369 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (version 1.7.0_80) on Wed Jun 07 15:10:52 EDT 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>HttpClientTransport (Jetty :: Project 9.2.22.v20170606 API)</title>
<meta name="date" content="2017-06-07">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="HttpClientTransport (Jetty :: Project 9.2.22.v20170606 API)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/HttpClientTransport.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 class="aboutLanguage"><em><script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-1149868-7']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/eclipse/jetty/client/HttpClient.html" title="class in org.eclipse.jetty.client"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/eclipse/jetty/client/HttpConnection.html" title="class in org.eclipse.jetty.client"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/eclipse/jetty/client/HttpClientTransport.html" target="_top">Frames</a></li>
<li><a href="HttpClientTransport.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All 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>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.eclipse.jetty.client</div>
<h2 title="Interface HttpClientTransport" class="title">Interface HttpClientTransport</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="../../../../org/eclipse/jetty/io/ClientConnectionFactory.html" title="interface in org.eclipse.jetty.io">ClientConnectionFactory</a></dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../org/eclipse/jetty/client/AbstractHttpClientTransport.html" title="class in org.eclipse.jetty.client">AbstractHttpClientTransport</a>, <a href="../../../../org/eclipse/jetty/fcgi/client/http/HttpClientTransportOverFCGI.html" title="class in org.eclipse.jetty.fcgi.client.http">HttpClientTransportOverFCGI</a>, <a href="../../../../org/eclipse/jetty/client/http/HttpClientTransportOverHTTP.html" title="class in org.eclipse.jetty.client.http">HttpClientTransportOverHTTP</a>, <a href="../../../../org/eclipse/jetty/spdy/client/http/HttpClientTransportOverSPDY.html" title="class in org.eclipse.jetty.spdy.client.http">HttpClientTransportOverSPDY</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="strong">HttpClientTransport</span>
extends <a href="../../../../org/eclipse/jetty/io/ClientConnectionFactory.html" title="interface in org.eclipse.jetty.io">ClientConnectionFactory</a></pre>
<div class="block"><a href="../../../../org/eclipse/jetty/client/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="../../../../org/eclipse/jetty/client/HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a>.
<p/>
While the <a href="../../../../org/eclipse/jetty/client/HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a> APIs define the HTTP semantic (request, response, headers, etc.)
<em>how</em> a HTTP exchange is carried over the network depends on implementations of this class.
<p/>
The default implementation uses the HTTP protocol to carry over the network the HTTP exchange,
but the HTTP exchange may also be carried using the SPDY protocol or the FCGI protocol or, in future,
other protocols.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested_class_summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested_classes_inherited_from_class_org.eclipse.jetty.io.ClientConnectionFactory">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.eclipse.jetty.io.<a href="../../../../org/eclipse/jetty/io/ClientConnectionFactory.html" title="interface in org.eclipse.jetty.io">ClientConnectionFactory</a></h3>
<code><a href="../../../../org/eclipse/jetty/io/ClientConnectionFactory.Helper.html" title="class in org.eclipse.jetty.io">ClientConnectionFactory.Helper</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/client/HttpClientTransport.html#HTTP_CONNECTION_PROMISE_CONTEXT_KEY">HTTP_CONNECTION_PROMISE_CONTEXT_KEY</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/client/HttpClientTransport.html#HTTP_DESTINATION_CONTEXT_KEY">HTTP_DESTINATION_CONTEXT_KEY</a></strong></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/client/HttpClientTransport.html#connect(java.net.SocketAddress,%20java.util.Map)">connect</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/net/SocketAddress.html?is-external=true" title="class or interface in java.net">SocketAddress</a>&nbsp;address,
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;context)</code>
<div class="block">Establishes a physical connection to the given <code>address</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../org/eclipse/jetty/client/HttpDestination.html" title="class in org.eclipse.jetty.client">HttpDestination</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/client/HttpClientTransport.html#newHttpDestination(org.eclipse.jetty.client.Origin)">newHttpDestination</a></strong>(<a href="../../../../org/eclipse/jetty/client/Origin.html" title="class in org.eclipse.jetty.client">Origin</a>&nbsp;origin)</code>
<div class="block">Creates a new, transport-specific, <a href="../../../../org/eclipse/jetty/client/HttpDestination.html" title="class in org.eclipse.jetty.client"><code>HttpDestination</code></a> object.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/client/HttpClientTransport.html#setHttpClient(org.eclipse.jetty.client.HttpClient)">setHttpClient</a></strong>(<a href="../../../../org/eclipse/jetty/client/HttpClient.html" title="class in org.eclipse.jetty.client">HttpClient</a>&nbsp;client)</code>
<div class="block">Sets the <a href="../../../../org/eclipse/jetty/client/HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a> instance on this transport.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.eclipse.jetty.io.ClientConnectionFactory">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.eclipse.jetty.io.<a href="../../../../org/eclipse/jetty/io/ClientConnectionFactory.html" title="interface in org.eclipse.jetty.io">ClientConnectionFactory</a></h3>
<code><a href="../../../../org/eclipse/jetty/io/ClientConnectionFactory.html#newConnection(org.eclipse.jetty.io.EndPoint,%20java.util.Map)">newConnection</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="HTTP_DESTINATION_CONTEXT_KEY">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>HTTP_DESTINATION_CONTEXT_KEY</h4>
<pre>static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> HTTP_DESTINATION_CONTEXT_KEY</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.eclipse.jetty.client.HttpClientTransport.HTTP_DESTINATION_CONTEXT_KEY">Constant Field Values</a></dd></dl>
</li>
</ul>
<a name="HTTP_CONNECTION_PROMISE_CONTEXT_KEY">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>HTTP_CONNECTION_PROMISE_CONTEXT_KEY</h4>
<pre>static final&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> HTTP_CONNECTION_PROMISE_CONTEXT_KEY</pre>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.eclipse.jetty.client.HttpClientTransport.HTTP_CONNECTION_PROMISE_CONTEXT_KEY">Constant Field Values</a></dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="setHttpClient(org.eclipse.jetty.client.HttpClient)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHttpClient</h4>
<pre>void&nbsp;setHttpClient(<a href="../../../../org/eclipse/jetty/client/HttpClient.html" title="class in org.eclipse.jetty.client">HttpClient</a>&nbsp;client)</pre>
<div class="block">Sets the <a href="../../../../org/eclipse/jetty/client/HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a> instance on this transport.
<p />
This is needed because of a chicken-egg problem: in order to create the <a href="../../../../org/eclipse/jetty/client/HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a>
a <a href="../../../../org/eclipse/jetty/client/HttpClientTransport.html" title="interface in org.eclipse.jetty.client"><code>HttpClientTransport</code></a> is needed, that therefore cannot have a reference yet to the
<a href="../../../../org/eclipse/jetty/client/HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>client</code> - the <a href="../../../../org/eclipse/jetty/client/HttpClient.html" title="class in org.eclipse.jetty.client"><code>HttpClient</code></a> that uses this transport.</dd></dl>
</li>
</ul>
<a name="newHttpDestination(org.eclipse.jetty.client.Origin)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newHttpDestination</h4>
<pre><a href="../../../../org/eclipse/jetty/client/HttpDestination.html" title="class in org.eclipse.jetty.client">HttpDestination</a>&nbsp;newHttpDestination(<a href="../../../../org/eclipse/jetty/client/Origin.html" title="class in org.eclipse.jetty.client">Origin</a>&nbsp;origin)</pre>
<div class="block">Creates a new, transport-specific, <a href="../../../../org/eclipse/jetty/client/HttpDestination.html" title="class in org.eclipse.jetty.client"><code>HttpDestination</code></a> object.
<p />
<a href="../../../../org/eclipse/jetty/client/HttpDestination.html" title="class in org.eclipse.jetty.client"><code>HttpDestination</code></a> controls the destination-connection cardinality: protocols like
HTTP have 1-N cardinality, while multiplexed protocols like SPDY have a 1-1 cardinality.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>origin</code> - the destination origin</dd>
<dt><span class="strong">Returns:</span></dt><dd>a new, transport-specific, <a href="../../../../org/eclipse/jetty/client/HttpDestination.html" title="class in org.eclipse.jetty.client"><code>HttpDestination</code></a> object</dd></dl>
</li>
</ul>
<a name="connect(java.net.SocketAddress, java.util.Map)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>connect</h4>
<pre>void&nbsp;connect(<a href="http://docs.oracle.com/javase/7/docs/api/java/net/SocketAddress.html?is-external=true" title="class or interface in java.net">SocketAddress</a>&nbsp;address,
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&gt;&nbsp;context)</pre>
<div class="block">Establishes a physical connection to the given <code>address</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>address</code> - the address to connect to</dd><dd><code>context</code> - the context information to establish the connection</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/HttpClientTransport.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 class="aboutLanguage"><em><script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-1149868-7']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/eclipse/jetty/client/HttpClient.html" title="class in org.eclipse.jetty.client"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/eclipse/jetty/client/HttpConnection.html" title="class in org.eclipse.jetty.client"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/eclipse/jetty/client/HttpClientTransport.html" target="_top">Frames</a></li>
<li><a href="HttpClientTransport.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All 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>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 1995-2017 <a href="http://webtide.com">Webtide</a>. All Rights Reserved.</small></p>
</body>
</html>