blob: ea23356fffa56763229b7f801f166c7f0c205a7a [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.11) on Mon Oct 11 11:08:51 CDT 2021 -->
<title>HttpReceiver (Eclipse Jetty API Doc - v10.0.7)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2021-10-11">
<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="HttpReceiver (Eclipse Jetty API Doc - v10.0.7)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
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><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/HttpReceiver.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</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>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.eclipse.jetty.client</a></div>
<h2 title="Class HttpReceiver" class="title">Class HttpReceiver</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.eclipse.jetty.client.HttpReceiver</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><code><a href="../fcgi/client/http/HttpReceiverOverFCGI.html" title="class in org.eclipse.jetty.fcgi.client.http">HttpReceiverOverFCGI</a></code>, <code><a href="http/HttpReceiverOverHTTP.html" title="class in org.eclipse.jetty.client.http">HttpReceiverOverHTTP</a></code></dd>
</dl>
<hr>
<pre>public abstract class <span class="typeNameLabel">HttpReceiver</span>
extends java.lang.Object</pre>
<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.
<p>
<a href="HttpReceiver.html" title="class in org.eclipse.jetty.client"><code>HttpReceiver</code></a> maintains a state machine that is updated when the steps of receiving a response are executed.
<p>
Subclasses must handle the transport-specific details, for example how to read from the raw socket and how to parse
the bytes read from the socket. Then they have to call the methods defined in this class in the following order:
<ol>
<li><a href="#responseBegin(org.eclipse.jetty.client.HttpExchange)"><code>responseBegin(HttpExchange)</code></a>, when the HTTP response data containing the HTTP status code
is available</li>
<li><a href="#responseHeader(org.eclipse.jetty.client.HttpExchange,org.eclipse.jetty.http.HttpField)"><code>responseHeader(HttpExchange, HttpField)</code></a>, when an HTTP field is available</li>
<li><a href="#responseHeaders(org.eclipse.jetty.client.HttpExchange)"><code>responseHeaders(HttpExchange)</code></a>, when all HTTP headers are available</li>
<li><a href="#responseContent(org.eclipse.jetty.client.HttpExchange,java.nio.ByteBuffer,org.eclipse.jetty.util.Callback)"><code>responseContent(HttpExchange, ByteBuffer, Callback)</code></a>, when HTTP content is available</li>
<li><a href="#responseSuccess(org.eclipse.jetty.client.HttpExchange)"><code>responseSuccess(HttpExchange)</code></a>, when the response is successful</li>
</ol>
At any time, subclasses may invoke <a href="#responseFailure(java.lang.Throwable)"><code>responseFailure(Throwable)</code></a> to indicate that the response has failed
(for example, because of I/O exceptions).
At any time, user threads may abort the response which will cause <a href="#responseFailure(java.lang.Throwable)"><code>responseFailure(Throwable)</code></a> to be
invoked.
<p>
The state machine maintained by this class ensures that the response steps are not executed by an I/O thread
if the response has already been failed.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="HttpSender.html" title="class in org.eclipse.jetty.client"><code>HttpSender</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colSecond" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(org.eclipse.jetty.client.HttpChannel)">HttpReceiver</a></span>&#8203;(<a href="HttpChannel.html" title="class in org.eclipse.jetty.client">HttpChannel</a>&nbsp;channel)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#abort(org.eclipse.jetty.client.HttpExchange,java.lang.Throwable)">abort</a></span>&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange,
java.lang.Throwable&nbsp;failure)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#demand()">demand</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dispose()">dispose</a></span>()</code></th>
<td class="colLast">
<div class="block">Disposes the state of this HttpReceiver.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected <a href="HttpChannel.html" title="class in org.eclipse.jetty.client">HttpChannel</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getHttpChannel()">getHttpChannel</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected <a href="HttpDestination.html" title="class in org.eclipse.jetty.client">HttpDestination</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getHttpDestination()">getHttpDestination</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>protected <a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getHttpExchange()">getHttpExchange</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasDemandOrStall()">hasDemandOrStall</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isFailed()">isFailed</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#receive()">receive</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#reset()">reset</a></span>()</code></th>
<td class="colLast">
<div class="block">Resets the state of this HttpReceiver.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#responseBegin(org.eclipse.jetty.client.HttpExchange)">responseBegin</a></span>&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange)</code></th>
<td class="colLast">
<div class="block">Method to be invoked when the response status code is available.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#responseContent(org.eclipse.jetty.client.HttpExchange,java.nio.ByteBuffer,org.eclipse.jetty.util.Callback)">responseContent</a></span>&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange,
java.nio.ByteBuffer&nbsp;buffer,
<a href="../util/Callback.html" title="interface in org.eclipse.jetty.util">Callback</a>&nbsp;callback)</code></th>
<td class="colLast">
<div class="block">Method to be invoked when response HTTP content is available.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#responseFailure(java.lang.Throwable)">responseFailure</a></span>&#8203;(java.lang.Throwable&nbsp;failure)</code></th>
<td class="colLast">
<div class="block">Method to be invoked when the response is failed.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#responseHeader(org.eclipse.jetty.client.HttpExchange,org.eclipse.jetty.http.HttpField)">responseHeader</a></span>&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange,
<a href="../http/HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field)</code></th>
<td class="colLast">
<div class="block">Method to be invoked when a response HTTP header is available.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#responseHeaders(org.eclipse.jetty.client.HttpExchange)">responseHeaders</a></span>&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange)</code></th>
<td class="colLast">
<div class="block">Method to be invoked after all response HTTP headers are available.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#responseSuccess(org.eclipse.jetty.client.HttpExchange)">responseSuccess</a></span>&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange)</code></th>
<td class="colLast">
<div class="block">Method to be invoked when the response is successful.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#storeCookie(java.net.URI,org.eclipse.jetty.http.HttpField)">storeCookie</a></span>&#8203;(java.net.URI&nbsp;uri,
<a href="../http/HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toString()">toString</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;(org.eclipse.jetty.client.HttpChannel)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>HttpReceiver</h4>
<pre>protected&nbsp;HttpReceiver&#8203;(<a href="HttpChannel.html" title="class in org.eclipse.jetty.client">HttpChannel</a>&nbsp;channel)</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="getHttpChannel()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHttpChannel</h4>
<pre class="methodSignature">protected&nbsp;<a href="HttpChannel.html" title="class in org.eclipse.jetty.client">HttpChannel</a>&nbsp;getHttpChannel()</pre>
</li>
</ul>
<a id="demand()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>demand</h4>
<pre class="methodSignature">protected&nbsp;long&nbsp;demand()</pre>
</li>
</ul>
<a id="hasDemandOrStall()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasDemandOrStall</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;hasDemandOrStall()</pre>
</li>
</ul>
<a id="getHttpExchange()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHttpExchange</h4>
<pre class="methodSignature">protected&nbsp;<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;getHttpExchange()</pre>
</li>
</ul>
<a id="getHttpDestination()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHttpDestination</h4>
<pre class="methodSignature">protected&nbsp;<a href="HttpDestination.html" title="class in org.eclipse.jetty.client">HttpDestination</a>&nbsp;getHttpDestination()</pre>
</li>
</ul>
<a id="isFailed()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFailed</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isFailed()</pre>
</li>
</ul>
<a id="receive()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>receive</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;receive()</pre>
</li>
</ul>
<a id="responseBegin(org.eclipse.jetty.client.HttpExchange)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>responseBegin</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;responseBegin&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange)</pre>
<div class="block">Method to be invoked when the response status code is available.
<p>
Subclasses must have set the response status code on the <a href="api/Response.html" title="interface in org.eclipse.jetty.client.api"><code>Response</code></a> object of the <a href="HttpExchange.html" title="class in org.eclipse.jetty.client"><code>HttpExchange</code></a>
prior invoking this method.
<p>
This method takes case of notifying <a href="api/Response.BeginListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.BeginListener</code></a>s.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>exchange</code> - the HTTP exchange</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether the processing should continue</dd>
</dl>
</li>
</ul>
<a id="responseHeader(org.eclipse.jetty.client.HttpExchange,org.eclipse.jetty.http.HttpField)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>responseHeader</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;responseHeader&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange,
<a href="../http/HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field)</pre>
<div class="block">Method to be invoked when a response HTTP header is available.
<p>
Subclasses must not have added the header to the <a href="api/Response.html" title="interface in org.eclipse.jetty.client.api"><code>Response</code></a> object of the <a href="HttpExchange.html" title="class in org.eclipse.jetty.client"><code>HttpExchange</code></a>
prior invoking this method.
<p>
This method takes case of notifying <a href="api/Response.HeaderListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.HeaderListener</code></a>s and storing cookies.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>exchange</code> - the HTTP exchange</dd>
<dd><code>field</code> - the response HTTP field</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether the processing should continue</dd>
</dl>
</li>
</ul>
<a id="storeCookie(java.net.URI,org.eclipse.jetty.http.HttpField)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>storeCookie</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;storeCookie&#8203;(java.net.URI&nbsp;uri,
<a href="../http/HttpField.html" title="class in org.eclipse.jetty.http">HttpField</a>&nbsp;field)</pre>
</li>
</ul>
<a id="responseHeaders(org.eclipse.jetty.client.HttpExchange)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>responseHeaders</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;responseHeaders&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange)</pre>
<div class="block">Method to be invoked after all response HTTP headers are available.
<p>
This method takes case of notifying <a href="api/Response.HeadersListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.HeadersListener</code></a>s.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>exchange</code> - the HTTP exchange</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether the processing should continue</dd>
</dl>
</li>
</ul>
<a id="responseContent(org.eclipse.jetty.client.HttpExchange,java.nio.ByteBuffer,org.eclipse.jetty.util.Callback)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>responseContent</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;responseContent&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange,
java.nio.ByteBuffer&nbsp;buffer,
<a href="../util/Callback.html" title="interface in org.eclipse.jetty.util">Callback</a>&nbsp;callback)</pre>
<div class="block">Method to be invoked when response HTTP content is available.
<p>
This method takes case of decoding the content, if necessary, and notifying <a href="api/Response.ContentListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.ContentListener</code></a>s.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>exchange</code> - the HTTP exchange</dd>
<dd><code>buffer</code> - the response HTTP content buffer</dd>
<dd><code>callback</code> - the callback</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether the processing should continue</dd>
</dl>
</li>
</ul>
<a id="responseSuccess(org.eclipse.jetty.client.HttpExchange)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>responseSuccess</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;responseSuccess&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange)</pre>
<div class="block">Method to be invoked when the response is successful.
<p>
This method takes case of notifying <a href="api/Response.SuccessListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.SuccessListener</code></a>s and possibly
<a href="api/Response.CompleteListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.CompleteListener</code></a>s (if the exchange is completed).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>exchange</code> - the HTTP exchange</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether the response was processed as successful</dd>
</dl>
</li>
</ul>
<a id="responseFailure(java.lang.Throwable)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>responseFailure</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;responseFailure&#8203;(java.lang.Throwable&nbsp;failure)</pre>
<div class="block">Method to be invoked when the response is failed.
<p>
This method takes care of notifying <a href="api/Response.FailureListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.FailureListener</code></a>s.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>failure</code> - the response failure</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether the response was processed as failed</dd>
</dl>
</li>
</ul>
<a id="reset()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reset</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;reset()</pre>
<div class="block">Resets the state of this HttpReceiver.
<p>
Subclasses should override (but remember to call <code>super</code>) to reset their own state.
<p>
Either this method or <a href="#dispose()"><code>dispose()</code></a> is called.</div>
</li>
</ul>
<a id="dispose()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dispose</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;dispose()</pre>
<div class="block">Disposes the state of this HttpReceiver.
<p>
Subclasses should override (but remember to call <code>super</code>) to dispose their own state.
<p>
Either this method or <a href="#reset()"><code>reset()</code></a> is called.</div>
</li>
</ul>
<a id="abort(org.eclipse.jetty.client.HttpExchange,java.lang.Throwable)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>abort</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;abort&#8203;(<a href="HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange,
java.lang.Throwable&nbsp;failure)</pre>
</li>
</ul>
<a id="toString()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre class="methodSignature">public&nbsp;java.lang.String&nbsp;toString()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>toString</code>&nbsp;in class&nbsp;<code>java.lang.Object</code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<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="navBarCell1Rev">Class</li>
<li><a href="class-use/HttpReceiver.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</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>