<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.11) on Wed Jul 07 10:55:45 EDT 2021 -->
<title>HttpReceiverOverFCGI (Eclipse Jetty API Doc - v10.0.6)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2021-07-07">
<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="HttpReceiverOverFCGI (Eclipse Jetty API Doc - v10.0.6)";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":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/HttpReceiverOverFCGI.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.fcgi.client.http</a></div>
<h2 title="Class HttpReceiverOverFCGI" class="title">Class HttpReceiverOverFCGI</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../../client/HttpReceiver.html" title="class in org.eclipse.jetty.client">org.eclipse.jetty.client.HttpReceiver</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.jetty.fcgi.client.http.HttpReceiverOverFCGI</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<pre>public class <span class="typeNameLabel">HttpReceiverOverFCGI</span>
extends <a href="../../../client/HttpReceiver.html" title="class in org.eclipse.jetty.client">HttpReceiver</a></pre>
</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">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(org.eclipse.jetty.client.HttpChannel)">HttpReceiverOverFCGI</a></span>&#8203;(<a href="../../../client/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>protected <a href="HttpChannelOverFCGI.html" title="class in org.eclipse.jetty.fcgi.client.http">HttpChannelOverFCGI</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="i1" class="rowColor">
<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="i2" 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="../../../client/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="i3" 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="../../../client/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="i4" 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="i5" 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="../../../client/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="i6" 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="../../../client/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="i7" 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="../../../client/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>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.eclipse.jetty.client.HttpReceiver">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.jetty.client.<a href="../../../client/HttpReceiver.html" title="class in org.eclipse.jetty.client">HttpReceiver</a></h3>
<code><a href="../../../client/HttpReceiver.html#abort(org.eclipse.jetty.client.HttpExchange,java.lang.Throwable)">abort</a>, <a href="../../../client/HttpReceiver.html#demand()">demand</a>, <a href="../../../client/HttpReceiver.html#dispose()">dispose</a>, <a href="../../../client/HttpReceiver.html#getHttpDestination()">getHttpDestination</a>, <a href="../../../client/HttpReceiver.html#getHttpExchange()">getHttpExchange</a>, <a href="../../../client/HttpReceiver.html#hasDemandOrStall()">hasDemandOrStall</a>, <a href="../../../client/HttpReceiver.html#isFailed()">isFailed</a>, <a href="../../../client/HttpReceiver.html#reset()">reset</a>, <a href="../../../client/HttpReceiver.html#storeCookie(java.net.URI,org.eclipse.jetty.http.HttpField)">storeCookie</a>, <a href="../../../client/HttpReceiver.html#toString()">toString</a></code></li>
</ul>
<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>HttpReceiverOverFCGI</h4>
<pre>public&nbsp;HttpReceiverOverFCGI&#8203;(<a href="../../../client/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="HttpChannelOverFCGI.html" title="class in org.eclipse.jetty.fcgi.client.http">HttpChannelOverFCGI</a>&nbsp;getHttpChannel()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../client/HttpReceiver.html#getHttpChannel()">getHttpChannel</a></code>&nbsp;in class&nbsp;<code><a href="../../../client/HttpReceiver.html" title="class in org.eclipse.jetty.client">HttpReceiver</a></code></dd>
</dl>
</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="../../../client/HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../client/HttpReceiver.html#responseBegin(org.eclipse.jetty.client.HttpExchange)">HttpReceiver</a></code></span></div>
<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="../../../client/api/Response.html" title="interface in org.eclipse.jetty.client.api"><code>Response</code></a> object of the <a href="../../../client/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="../../../client/api/Response.BeginListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.BeginListener</code></a>s.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../client/HttpReceiver.html#responseBegin(org.eclipse.jetty.client.HttpExchange)">responseBegin</a></code>&nbsp;in class&nbsp;<code><a href="../../../client/HttpReceiver.html" title="class in org.eclipse.jetty.client">HttpReceiver</a></code></dd>
<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="../../../client/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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../client/HttpReceiver.html#responseHeader(org.eclipse.jetty.client.HttpExchange,org.eclipse.jetty.http.HttpField)">HttpReceiver</a></code></span></div>
<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="../../../client/api/Response.html" title="interface in org.eclipse.jetty.client.api"><code>Response</code></a> object of the <a href="../../../client/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="../../../client/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="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../client/HttpReceiver.html#responseHeader(org.eclipse.jetty.client.HttpExchange,org.eclipse.jetty.http.HttpField)">responseHeader</a></code>&nbsp;in class&nbsp;<code><a href="../../../client/HttpReceiver.html" title="class in org.eclipse.jetty.client">HttpReceiver</a></code></dd>
<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="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="../../../client/HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../client/HttpReceiver.html#responseHeaders(org.eclipse.jetty.client.HttpExchange)">HttpReceiver</a></code></span></div>
<div class="block">Method to be invoked after all response HTTP headers are available.
 <p>
 This method takes case of notifying <a href="../../../client/api/Response.HeadersListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.HeadersListener</code></a>s.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../client/HttpReceiver.html#responseHeaders(org.eclipse.jetty.client.HttpExchange)">responseHeaders</a></code>&nbsp;in class&nbsp;<code><a href="../../../client/HttpReceiver.html" title="class in org.eclipse.jetty.client">HttpReceiver</a></code></dd>
<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="../../../client/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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../client/HttpReceiver.html#responseContent(org.eclipse.jetty.client.HttpExchange,java.nio.ByteBuffer,org.eclipse.jetty.util.Callback)">HttpReceiver</a></code></span></div>
<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="../../../client/api/Response.ContentListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.ContentListener</code></a>s.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../client/HttpReceiver.html#responseContent(org.eclipse.jetty.client.HttpExchange,java.nio.ByteBuffer,org.eclipse.jetty.util.Callback)">responseContent</a></code>&nbsp;in class&nbsp;<code><a href="../../../client/HttpReceiver.html" title="class in org.eclipse.jetty.client">HttpReceiver</a></code></dd>
<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="../../../client/HttpExchange.html" title="class in org.eclipse.jetty.client">HttpExchange</a>&nbsp;exchange)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../client/HttpReceiver.html#responseSuccess(org.eclipse.jetty.client.HttpExchange)">HttpReceiver</a></code></span></div>
<div class="block">Method to be invoked when the response is successful.
 <p>
 This method takes case of notifying <a href="../../../client/api/Response.SuccessListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.SuccessListener</code></a>s and possibly
 <a href="../../../client/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="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../client/HttpReceiver.html#responseSuccess(org.eclipse.jetty.client.HttpExchange)">responseSuccess</a></code>&nbsp;in class&nbsp;<code><a href="../../../client/HttpReceiver.html" title="class in org.eclipse.jetty.client">HttpReceiver</a></code></dd>
<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"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../client/HttpReceiver.html#responseFailure(java.lang.Throwable)">HttpReceiver</a></code></span></div>
<div class="block">Method to be invoked when the response is failed.
 <p>
 This method takes care of notifying <a href="../../../client/api/Response.FailureListener.html" title="interface in org.eclipse.jetty.client.api"><code>Response.FailureListener</code></a>s.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../client/HttpReceiver.html#responseFailure(java.lang.Throwable)">responseFailure</a></code>&nbsp;in class&nbsp;<code><a href="../../../client/HttpReceiver.html" title="class in org.eclipse.jetty.client">HttpReceiver</a></code></dd>
<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="receive()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>receive</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;receive()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../client/HttpReceiver.html#receive()">receive</a></code>&nbsp;in class&nbsp;<code><a href="../../../client/HttpReceiver.html" title="class in org.eclipse.jetty.client">HttpReceiver</a></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/HttpReceiverOverFCGI.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>
