public interface SessionInputBuffer
Implementing classes are also expected to manage intermediate data buffering for optimal input performance.
Modifier and Type | Method and Description |
---|---|
HttpTransportMetrics |
getMetrics()
Returns
HttpTransportMetrics for this session buffer. |
boolean |
isDataAvailable(int timeout)
Deprecated.
(4.3) do not use. This function should be provided at the
connection level
|
int |
read()
Reads the next byte of data from this session buffer.
|
int |
read(byte[] b)
Reads some number of bytes from the session buffer and stores them into
the buffer array
b . |
int |
read(byte[] b,
int off,
int len)
Reads up to
len bytes of data from the session buffer into
an array of bytes. |
String |
readLine()
Reads a complete line of characters up to a line delimiter from this
session buffer.
|
int |
readLine(CharArrayBuffer buffer)
Reads a complete line of characters up to a line delimiter from this
session buffer into the given line buffer.
|
int read(byte[] b, int off, int len) throws IOException
len
bytes of data from the session buffer into
an array of bytes. An attempt is made to read as many as
len
bytes, but a smaller number may be read, possibly
zero. The number of bytes actually read is returned as an integer.
This method blocks until input data is available, end of file is detected, or an exception is thrown.
If off
is negative, or len
is negative, or
off+len
is greater than the length of the array
b
, then an IndexOutOfBoundsException
is
thrown.
b
- the buffer into which the data is read.off
- the start offset in array b
at which the data is written.len
- the maximum number of bytes to read.-1
if there is no more data because the end of
the stream has been reached.IOException
- if an I/O error occurs.int read(byte[] b) throws IOException
b
. The number of bytes actually read is
returned as an integer. This method blocks until input data is
available, end of file is detected, or an exception is thrown.b
- the buffer into which the data is read.-1
is there is no more data because the end of
the stream has been reached.IOException
- if an I/O error occurs.int read() throws IOException
int
in the range 0
to
255
. If no byte is available because the end of the stream
has been reached, the value -1
is returned. This method
blocks until input data is available, the end of the stream is detected,
or an exception is thrown.-1
if the end of the
stream is reached.IOException
- if an I/O error occurs.int readLine(CharArrayBuffer buffer) throws IOException
-1
is returned. This method blocks until input
data is available, end of file is detected, or an exception is thrown.
The choice of a char encoding and line delimiter sequence is up to the specific implementations of this interface.
buffer
- the line buffer.IOException
- if an I/O error occurs.String readLine() throws IOException
null
is returned. This method blocks until input data is
available, end of file is detected, or an exception is thrown.
The choice of a char encoding and line delimiter sequence is up to the specific implementations of this interface.
IOException
- if an I/O error occurs.@Deprecated boolean isDataAvailable(int timeout) throws IOException
0
this method blocks indefinitely.timeout
- in milliseconds.true
if some data is available in the session
buffer or false
otherwise.IOException
- if an I/O error occurs.HttpTransportMetrics getMetrics()
HttpTransportMetrics
for this session buffer.Copyright © 2005–2022 The Apache Software Foundation. All rights reserved.