org.apache.http.io.BufferInfo, BufferInfoSessionInputBufferImpl, SessionOutputBufferImpl, SharedInputBuffer, SharedOutputBuffer, SimpleInputBuffer, SimpleOutputBufferpublic class ExpandableBuffer extends java.lang.Object implements org.apache.http.io.BufferInfo, BufferInfo
ByteBufferAllocator
interface. Internally, this class is backed by an instance of
ByteBuffer.
This class is not thread safe.
| Modifier and Type | Field | Description |
|---|---|---|
protected java.nio.ByteBuffer |
buffer |
|
static int |
INPUT_MODE |
|
static int |
OUTPUT_MODE |
| Constructor | Description |
|---|---|
ExpandableBuffer(int buffersize,
ByteBufferAllocator allocator) |
Allocates buffer of the given size using the given allocator.
|
| Modifier and Type | Method | Description |
|---|---|---|
int |
available() |
Returns available capacity of this buffer.
|
int |
capacity() |
Returns the total capacity of this buffer.
|
protected void |
clear() |
Clears buffer.
|
protected void |
ensureCapacity(int requiredCapacity) |
Ensures the buffer can accommodate the required capacity.
|
protected void |
expand() |
Expands buffer's capacity.
|
protected int |
getMode() |
Returns the current mode:
|
boolean |
hasData() |
Determines if the buffer contains data.
|
int |
length() |
Returns the length of this buffer.
|
protected void |
setInputMode() |
Sets input mode.
|
protected void |
setOutputMode() |
Sets output mode.
|
java.lang.String |
toString() |
public static final int INPUT_MODE
public static final int OUTPUT_MODE
protected java.nio.ByteBuffer buffer
public ExpandableBuffer(int buffersize,
ByteBufferAllocator allocator)
buffersize - the buffer size.allocator - allocator to be used to allocate ByteBuffers.protected int getMode()
INPUT_MODE: the buffer is in the input mode.
OUTPUT_MODE: the buffer is in the output mode.
protected void setOutputMode()
protected void setInputMode()
protected void expand()
throws java.nio.BufferOverflowException
java.nio.BufferOverflowException - in case we get over the maximum allowed valueprotected void ensureCapacity(int requiredCapacity)
public int capacity()
capacity in interface org.apache.http.io.BufferInfocapacity in interface BufferInfopublic boolean hasData()
true if there is data in the buffer,
false otherwise.public int length()
length in interface org.apache.http.io.BufferInfolength in interface BufferInfopublic int available()
available in interface org.apache.http.io.BufferInfoavailable in interface BufferInfoprotected void clear()
public java.lang.String toString()
toString in class java.lang.Object