blob: e99db8a2c297d1caf12a81651541acb6964cc95f [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:50 EDT 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>HttpInput (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="HttpInput (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/HttpInput.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/server/HttpConnectionFactory.html" title="class in org.eclipse.jetty.server"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/eclipse/jetty/server/HttpInput.State.html" title="class in org.eclipse.jetty.server"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/eclipse/jetty/server/HttpInput.html" target="_top">Frames</a></li>
<li><a href="HttpInput.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><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&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><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&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.server</div>
<h2 title="Class HttpInput" class="title">Class HttpInput&lt;T&gt;</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">java.io.InputStream</a></li>
<li>
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ServletInputStream.html?is-external=true" title="class or interface in javax.servlet">javax.servlet.ServletInputStream</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.jetty.server.HttpInput&lt;T&gt;</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../org/eclipse/jetty/server/HttpInputOverHTTP.html" title="class in org.eclipse.jetty.server">HttpInputOverHTTP</a>, <a href="../../../../org/eclipse/jetty/server/QueuedHttpInput.html" title="class in org.eclipse.jetty.server">QueuedHttpInput</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="strong">HttpInput&lt;T&gt;</span>
extends <a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ServletInputStream.html?is-external=true" title="class or interface in javax.servlet">ServletInputStream</a>
implements <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a></pre>
<div class="block"><a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="class in org.eclipse.jetty.server"><code>HttpInput</code></a> provides an implementation of <a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ServletInputStream.html?is-external=true" title="class or interface in javax.servlet"><code>ServletInputStream</code></a> for <a href="../../../../org/eclipse/jetty/server/HttpChannel.html" title="class in org.eclipse.jetty.server"><code>HttpChannel</code></a>.
<p/>
Content may arrive in patterns such as [content(), content(), messageComplete()] so that this class
maintains two states: the content state that tells whether there is content to consume and the EOF
state that tells whether an EOF has arrived.
Only once the content has been consumed the content state is moved to the EOF state.</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>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static class&nbsp;</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.State.html" title="class in org.eclipse.jetty.server">HttpInput.State</a></strong></code>&nbsp;</td>
</tr>
</table>
</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>protected static <a href="../../../../org/eclipse/jetty/server/HttpInput.State.html" title="class in org.eclipse.jetty.server">HttpInput.State</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#ASYNC">ASYNC</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static <a href="../../../../org/eclipse/jetty/server/HttpInput.State.html" title="class in org.eclipse.jetty.server">HttpInput.State</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#EARLY_EOF">EARLY_EOF</a></strong></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static <a href="../../../../org/eclipse/jetty/server/HttpInput.State.html" title="class in org.eclipse.jetty.server">HttpInput.State</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#EOF">EOF</a></strong></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static <a href="../../../../org/eclipse/jetty/server/HttpInput.State.html" title="class in org.eclipse.jetty.server">HttpInput.State</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#STREAM">STREAM</a></strong></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#HttpInput()">HttpInput</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#HttpInput(java.lang.Object)">HttpInput</a></strong>(<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>&nbsp;lock)</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>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#available()">available</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#blockForContent()">blockForContent</a></strong>()</code>
<div class="block">Blocks until some content or some end-of-file event arrives.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#consume(T,%20int)">consume</a></strong>(<a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a>&nbsp;item,
int&nbsp;length)</code>
<div class="block">Consumes the given content.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#consumeAll()">consumeAll</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#content(T)">content</a></strong>(<a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a>&nbsp;item)</code>
<div class="block">Adds some content to this input stream.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#earlyEOF()">earlyEOF</a></strong>()</code>
<div class="block">This method should be called to signal that an EOF has been
detected before all the expected content arrived.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#failed(java.lang.Throwable)">failed</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;x)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected abstract int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#get(T,%20byte[],%20int,%20int)">get</a></strong>(<a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a>&nbsp;item,
byte[]&nbsp;buffer,
int&nbsp;offset,
int&nbsp;length)</code>
<div class="block">Copies the given content into the given byte buffer.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#getContentRead()">getContentRead</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#getNextContent()">getNextContent</a></strong>()</code>
<div class="block">A convenience method to call nextContent and to check the return value, which if null then the
a check is made for EOF and the state changed accordingly.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#init(org.eclipse.jetty.server.HttpChannelState)">init</a></strong>(<a href="../../../../org/eclipse/jetty/server/HttpChannelState.html" title="class in org.eclipse.jetty.server">HttpChannelState</a>&nbsp;state)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#isAsync()">isAsync</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#isEarlyEOF()">isEarlyEOF</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#isEOF()">isEOF</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#isFinished()">isFinished</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#isReady()">isReady</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><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></code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#lock()">lock</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#messageComplete()">messageComplete</a></strong>()</code>
<div class="block">This method should be called to signal that all the expected
content arrived.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected abstract <a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a></code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#nextContent()">nextContent</a></strong>()</code>
<div class="block">Access the next content to be consumed from.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#onAsyncRead()">onAsyncRead</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#read()">read</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#read(byte[],%20int,%20int)">read</a></strong>(byte[]&nbsp;b,
int&nbsp;off,
int&nbsp;len)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#recycle()">recycle</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected abstract int</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#remaining(T)">remaining</a></strong>(<a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a>&nbsp;item)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#run()">run</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#setReadListener(javax.servlet.ReadListener)">setReadListener</a></strong>(<a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ReadListener.html?is-external=true" title="class or interface in javax.servlet">ReadListener</a>&nbsp;readListener)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><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/server/HttpInput.html#toString()">toString</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../../org/eclipse/jetty/server/HttpInput.html#unready()">unready</a></strong>()</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_javax.servlet.ServletInputStream">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;javax.servlet.<a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ServletInputStream.html?is-external=true" title="class or interface in javax.servlet">ServletInputStream</a></h3>
<code><a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ServletInputStream.html?is-external=true#readLine(byte[],%20int,%20int)" title="class or interface in javax.servlet">readLine</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.io.InputStream">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.io.<a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true#close()" title="class or interface in java.io">close</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true#mark(int)" title="class or interface in java.io">mark</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true#markSupported()" title="class or interface in java.io">markSupported</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true#read(byte[])" title="class or interface in java.io">read</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true#reset()" title="class or interface in java.io">reset</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true#skip(long)" title="class or interface in java.io">skip</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<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></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long,%20int)" title="class or interface in java.lang">wait</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="STREAM">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>STREAM</h4>
<pre>protected static final&nbsp;<a href="../../../../org/eclipse/jetty/server/HttpInput.State.html" title="class in org.eclipse.jetty.server">HttpInput.State</a> STREAM</pre>
</li>
</ul>
<a name="ASYNC">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ASYNC</h4>
<pre>protected static final&nbsp;<a href="../../../../org/eclipse/jetty/server/HttpInput.State.html" title="class in org.eclipse.jetty.server">HttpInput.State</a> ASYNC</pre>
</li>
</ul>
<a name="EARLY_EOF">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>EARLY_EOF</h4>
<pre>protected static final&nbsp;<a href="../../../../org/eclipse/jetty/server/HttpInput.State.html" title="class in org.eclipse.jetty.server">HttpInput.State</a> EARLY_EOF</pre>
</li>
</ul>
<a name="EOF">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>EOF</h4>
<pre>protected static final&nbsp;<a href="../../../../org/eclipse/jetty/server/HttpInput.State.html" title="class in org.eclipse.jetty.server">HttpInput.State</a> EOF</pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="HttpInput()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>HttpInput</h4>
<pre>protected&nbsp;HttpInput()</pre>
</li>
</ul>
<a name="HttpInput(java.lang.Object)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>HttpInput</h4>
<pre>protected&nbsp;HttpInput(<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>&nbsp;lock)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="init(org.eclipse.jetty.server.HttpChannelState)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>init</h4>
<pre>public&nbsp;void&nbsp;init(<a href="../../../../org/eclipse/jetty/server/HttpChannelState.html" title="class in org.eclipse.jetty.server">HttpChannelState</a>&nbsp;state)</pre>
</li>
</ul>
<a name="lock()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>lock</h4>
<pre>public final&nbsp;<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>&nbsp;lock()</pre>
</li>
</ul>
<a name="recycle()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>recycle</h4>
<pre>public&nbsp;void&nbsp;recycle()</pre>
</li>
</ul>
<a name="available()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>available</h4>
<pre>public&nbsp;int&nbsp;available()</pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true#available()" title="class or interface in java.io">available</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a></code></dd>
</dl>
</li>
</ul>
<a name="read()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>read</h4>
<pre>public&nbsp;int&nbsp;read()
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true#read()" title="class or interface in java.io">read</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a></code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd></dl>
</li>
</ul>
<a name="read(byte[], int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>read</h4>
<pre>public&nbsp;int&nbsp;read(byte[]&nbsp;b,
int&nbsp;off,
int&nbsp;len)
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true#read(byte[],%20int,%20int)" title="class or interface in java.io">read</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</a></code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd></dl>
</li>
</ul>
<a name="getNextContent()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNextContent</h4>
<pre>protected&nbsp;<a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a>&nbsp;getNextContent()
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">A convenience method to call nextContent and to check the return value, which if null then the
a check is made for EOF and the state changed accordingly.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Content or null if none available.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/eclipse/jetty/server/HttpInput.html#nextContent()"><code>nextContent()</code></a></dd></dl>
</li>
</ul>
<a name="nextContent()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nextContent</h4>
<pre>protected abstract&nbsp;<a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a>&nbsp;nextContent()
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Access the next content to be consumed from. Returning the next item does not consume it
and it may be returned multiple times until it is consumed.
<p/>
Calls to <a href="../../../../org/eclipse/jetty/server/HttpInput.html#get(T,%20byte[],%20int,%20int)"><code>get(Object, byte[], int, int)</code></a>
or <a href="../../../../org/eclipse/jetty/server/HttpInput.html#consume(T,%20int)"><code>consume(Object, int)</code></a> are required to consume data from the content.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the content or null if none available.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if retrieving the content fails</dd></dl>
</li>
</ul>
<a name="remaining(java.lang.Object)">
<!-- -->
</a><a name="remaining(T)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remaining</h4>
<pre>protected abstract&nbsp;int&nbsp;remaining(<a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a>&nbsp;item)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>item</code> - the content</dd>
<dt><span class="strong">Returns:</span></dt><dd>how many bytes remain in the given content</dd></dl>
</li>
</ul>
<a name="get(java.lang.Object,byte[],int,int)">
<!-- -->
</a><a name="get(T, byte[], int, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>get</h4>
<pre>protected abstract&nbsp;int&nbsp;get(<a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a>&nbsp;item,
byte[]&nbsp;buffer,
int&nbsp;offset,
int&nbsp;length)</pre>
<div class="block">Copies the given content into the given byte buffer.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>item</code> - the content to copy from</dd><dd><code>buffer</code> - the buffer to copy into</dd><dd><code>offset</code> - the buffer offset to start copying from</dd><dd><code>length</code> - the space available in the buffer</dd>
<dt><span class="strong">Returns:</span></dt><dd>the number of bytes actually copied</dd></dl>
</li>
</ul>
<a name="consume(java.lang.Object,int)">
<!-- -->
</a><a name="consume(T, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>consume</h4>
<pre>protected abstract&nbsp;void&nbsp;consume(<a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a>&nbsp;item,
int&nbsp;length)</pre>
<div class="block">Consumes the given content.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>item</code> - the content to consume</dd><dd><code>length</code> - the number of bytes to consume</dd></dl>
</li>
</ul>
<a name="blockForContent()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>blockForContent</h4>
<pre>protected abstract&nbsp;void&nbsp;blockForContent()
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Blocks until some content or some end-of-file event arrives.</div>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - if the wait is interrupted</dd></dl>
</li>
</ul>
<a name="content(java.lang.Object)">
<!-- -->
</a><a name="content(T)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>content</h4>
<pre>public abstract&nbsp;void&nbsp;content(<a href="../../../../org/eclipse/jetty/server/HttpInput.html" title="type parameter in HttpInput">T</a>&nbsp;item)</pre>
<div class="block">Adds some content to this input stream.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>item</code> - the content to add</dd></dl>
</li>
</ul>
<a name="onAsyncRead()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>onAsyncRead</h4>
<pre>protected&nbsp;boolean&nbsp;onAsyncRead()</pre>
</li>
</ul>
<a name="getContentRead()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContentRead</h4>
<pre>public&nbsp;long&nbsp;getContentRead()</pre>
</li>
</ul>
<a name="earlyEOF()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>earlyEOF</h4>
<pre>public&nbsp;void&nbsp;earlyEOF()</pre>
<div class="block">This method should be called to signal that an EOF has been
detected before all the expected content arrived.
<p/>
Typically this will result in an EOFException being thrown
from a subsequent read rather than a -1 return.</div>
</li>
</ul>
<a name="isEarlyEOF()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isEarlyEOF</h4>
<pre>public&nbsp;boolean&nbsp;isEarlyEOF()</pre>
</li>
</ul>
<a name="messageComplete()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>messageComplete</h4>
<pre>public&nbsp;void&nbsp;messageComplete()</pre>
<div class="block">This method should be called to signal that all the expected
content arrived.</div>
</li>
</ul>
<a name="consumeAll()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>consumeAll</h4>
<pre>public&nbsp;boolean&nbsp;consumeAll()</pre>
</li>
</ul>
<a name="isAsync()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAsync</h4>
<pre>public&nbsp;boolean&nbsp;isAsync()</pre>
</li>
</ul>
<a name="isEOF()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isEOF</h4>
<pre>public&nbsp;boolean&nbsp;isEOF()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>whether an EOF has been detected, even though there may be content to consume.</dd></dl>
</li>
</ul>
<a name="isFinished()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFinished</h4>
<pre>public&nbsp;boolean&nbsp;isFinished()</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ServletInputStream.html?is-external=true#isFinished()" title="class or interface in javax.servlet">isFinished</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ServletInputStream.html?is-external=true" title="class or interface in javax.servlet">ServletInputStream</a></code></dd>
</dl>
</li>
</ul>
<a name="isReady()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isReady</h4>
<pre>public&nbsp;boolean&nbsp;isReady()</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ServletInputStream.html?is-external=true#isReady()" title="class or interface in javax.servlet">isReady</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ServletInputStream.html?is-external=true" title="class or interface in javax.servlet">ServletInputStream</a></code></dd>
</dl>
</li>
</ul>
<a name="unready()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unready</h4>
<pre>protected&nbsp;void&nbsp;unready()</pre>
</li>
</ul>
<a name="setReadListener(javax.servlet.ReadListener)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setReadListener</h4>
<pre>public&nbsp;void&nbsp;setReadListener(<a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ReadListener.html?is-external=true" title="class or interface in javax.servlet">ReadListener</a>&nbsp;readListener)</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ServletInputStream.html?is-external=true#setReadListener(javax.servlet.ReadListener)" title="class or interface in javax.servlet">setReadListener</a></code>&nbsp;in class&nbsp;<code><a href="http://docs.oracle.com/javaee/7/api/javax/servlet/ServletInputStream.html?is-external=true" title="class or interface in javax.servlet">ServletInputStream</a></code></dd>
</dl>
</li>
</ul>
<a name="failed(java.lang.Throwable)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>failed</h4>
<pre>public&nbsp;void&nbsp;failed(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;x)</pre>
</li>
</ul>
<a name="run()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>run</h4>
<pre>public&nbsp;void&nbsp;run()</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Runnable.html?is-external=true#run()" title="class or interface in java.lang">run</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Runnable.html?is-external=true" title="class or interface in java.lang">Runnable</a></code></dd>
</dl>
</li>
</ul>
<a name="toString()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>toString</h4>
<pre>public&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>&nbsp;toString()</pre>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><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></code></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/HttpInput.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/server/HttpConnectionFactory.html" title="class in org.eclipse.jetty.server"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../org/eclipse/jetty/server/HttpInput.State.html" title="class in org.eclipse.jetty.server"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/eclipse/jetty/server/HttpInput.html" target="_top">Frames</a></li>
<li><a href="HttpInput.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><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&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><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&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>