|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.glassfish.grizzly.http.server.io.InputBuffer
public class InputBuffer
Abstraction exposing both byte and character methods to read content from the HTTP messaging system in Grizzly.
| Constructor Summary | |
|---|---|
InputBuffer()
|
|
| Method Summary | |
|---|---|
boolean |
append(Buffer buffer)
Appends the specified Buffer to the internal composite
Buffer. |
int |
available()
|
int |
availableChar()
|
void |
close()
|
void |
fillFully(int length)
Fill the buffer (blocking) up to the requested length. |
void |
finished()
When invoked, this method will call ReadHandler.onAllDataRead()
on the current ReadHandler (if any). |
Buffer |
getBuffer()
|
ReadHandler |
getReadHandler()
|
void |
initialize(HttpRequestPacket request,
FilterChainContext ctx)
Per-request initialization required for the InputBuffer to function properly. |
boolean |
isAsyncEnabled()
|
boolean |
isFinished()
|
void |
mark(int readAheadLimit)
Only supported with binary data. |
boolean |
markSupported()
Only supported with binary data. |
boolean |
notifyAvailable(ReadHandler handler)
Installs a ReadHandler that will be notified when any data
becomes available to read without blocking. |
boolean |
notifyAvailable(ReadHandler handler,
int size)
Installs a ReadHandler that will be notified when the specified
amount of data is available to be read without blocking. |
void |
processingChars()
This method should be called if the InputBuffer is being used in conjunction with a Reader implementation. |
int |
read(byte[] b,
int off,
int len)
|
int |
read(char[] cbuf,
int off,
int len)
|
int |
read(java.nio.CharBuffer target)
|
int |
readByte()
This method always blocks. |
int |
readChar()
|
boolean |
ready()
|
void |
recycle()
Recycle this InputBuffer for reuse. |
void |
reset()
Only supported with binary data. |
void |
setAsyncEnabled(boolean asyncEnabled)
Sets the asynchronous processing state of this InputBuffer. |
long |
skip(long n,
boolean block)
Skips the specified number of bytes/characters. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public InputBuffer()
| Method Detail |
|---|
public void initialize(HttpRequestPacket request,
FilterChainContext ctx)
Per-request initialization required for the InputBuffer to function properly.
request - the current requestctx - the FilterChainContext for the chain processing this requestpublic void recycle()
Recycle this InputBuffer for reuse.
public void processingChars()
This method should be called if the InputBuffer is being used in conjunction
with a Reader implementation. If this method is not called,
any character-based methods called on this InputBuffer will
throw a IllegalStateException.
public int readByte()
throws java.io.IOException
java.io.IOExceptionInputStream.read()
public int read(byte[] b,
int off,
int len)
throws java.io.IOException
java.io.IOExceptionInputStream.read(byte[], int, int)public int available()
InputStream.available()public Buffer getBuffer()
Buffer used to buffer incoming request
data.public ReadHandler getReadHandler()
ReadHandler current in use, if any.
public int read(java.nio.CharBuffer target)
throws java.io.IOException
java.io.IOExceptionReader.read(java.nio.CharBuffer)
public int readChar()
throws java.io.IOException
java.io.IOExceptionReader.read()
public int read(char[] cbuf,
int off,
int len)
throws java.io.IOException
java.io.IOExceptionReader.read(char[], int, int)public boolean ready()
Reader.ready()
public void fillFully(int length)
throws java.io.IOException
length -
java.io.IOExceptionpublic int availableChar()
public void mark(int readAheadLimit)
Only supported with binary data.
InputStream.mark(int)public boolean markSupported()
Only supported with binary data.
InputStream.markSupported()
public void reset()
throws java.io.IOException
Only supported with binary data.
java.io.IOExceptionInputStream.reset()
public void close()
throws java.io.IOException
java.io.IOExceptionCloseable.close()
public long skip(long n,
boolean block)
throws java.io.IOException
java.lang.IllegalStateException - if the stream that is using this InputBuffer
is configured for asynchronous communication and the number of bytes/characters
being skipped exceeds the number of bytes available in the buffer.
java.io.IOExceptionInputStream.skip(long),
Reader.skip(long)
public void finished()
throws java.io.IOException
ReadHandler.onAllDataRead()
on the current ReadHandler (if any).
This method shouldn't be invoked by developers directly.
java.io.IOExceptionpublic boolean isFinished()
true if all request data has been read, otherwise
returns false.public boolean notifyAvailable(ReadHandler handler)
ReadHandler that will be notified when any data
becomes available to read without blocking.
handler - the ReadHandler to invoke.
true if the specified handler has
been accepted and will be notified as data becomes available to write,
otherwise returns false which means data is available to
be read without blocking.
public boolean notifyAvailable(ReadHandler handler,
int size)
ReadHandler that will be notified when the specified
amount of data is available to be read without blocking.
handler - the ReadHandler to invoke.size - the minimum number of bytes that must be available before
the ReadHandler is notified.
true if the specified handler has
been accepted and will be notified as data becomes available to write,
otherwise returns false which means data is available to
be read without blocking.
public boolean append(Buffer buffer)
throws java.io.IOException
Buffer to the internal composite
Buffer.
buffer - the Buffer to append
true if ReadHandler.onDataAvailable()
callback was invoked, otherwise returns false.
java.io.IOException - if an error occurs appending the Bufferpublic boolean isAsyncEnabled()
public void setAsyncEnabled(boolean asyncEnabled)
InputBuffer.
asyncEnabled - true if this InputBuffer
is to be used to process asynchronous request data.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||