public abstract class ServletInputStream
extends java.io.InputStream
readLine
method for reading data one line
at a time. With some protocols, such as HTTP POST and PUT, a
ServletInputStream
object can be used to read data sent from the
client.
A ServletInputStream
object is normally retrieved via the
ServletRequest.getInputStream()
method.
This is an abstract class that a servlet container implements. Subclasses of
this class must implement the java.io.InputStream.read()
method.
ServletRequest
Modifier | Constructor and Description |
---|---|
protected |
ServletInputStream()
Does nothing, because this is an abstract class.
|
Modifier and Type | Method and Description |
---|---|
abstract boolean |
isFinished()
Has the end of this InputStream been reached?
|
abstract boolean |
isReady()
Can data be read from this InputStream without blocking?
|
int |
readLine(byte[] b,
int off,
int len)
Reads the input stream, one line at a time.
|
abstract void |
setReadListener(ReadListener listener)
Sets the
ReadListener for this ServletInputStream and
thereby switches to non-blocking IO. |
protected ServletInputStream()
public int readLine(byte[] b, int off, int len) throws java.io.IOException
This method returns -1 if it reaches the end of the input stream before reading the maximum number of bytes.
b
- an array of bytes into which data is readoff
- an integer specifying the character at which this method
begins readinglen
- an integer specifying the maximum number of bytes to readjava.io.IOException
- if an input or output exception has occurredpublic abstract boolean isFinished()
true
if all the data has been read from the stream,
else false
public abstract boolean isReady()
ReadListener.onDataAvailable()
when data is available.true
if data can be read without blocking, else
false
public abstract void setReadListener(ReadListener listener)
ReadListener
for this ServletInputStream
and
thereby switches to non-blocking IO. It is only valid to switch to
non-blocking IO within async processing or HTTP upgrade processing.listener
- The non-blocking IO read listenerjava.lang.IllegalStateException
- If this method is called if neither
async nor HTTP upgrade is in progress or
if the ReadListener
has already
been setjava.lang.NullPointerException
- If listener is nullCopyright © 2000-2018 Apache Software Foundation. All Rights Reserved.