Package org.apache.http.nio.util
Class ExpandableBuffer
- java.lang.Object
-
- org.apache.http.nio.util.ExpandableBuffer
-
- All Implemented Interfaces:
BufferInfo,BufferInfo
- Direct Known Subclasses:
SessionInputBufferImpl,SessionOutputBufferImpl,SharedInputBuffer,SharedOutputBuffer,SimpleInputBuffer,SimpleOutputBuffer
public class ExpandableBuffer extends java.lang.Object implements BufferInfo, BufferInfo
A buffer that expand its capacity on demand usingByteBufferAllocatorinterface. Internally, this class is backed by an instance ofByteBuffer.This class is not thread safe.
- Since:
- 4.0
-
-
Field Summary
Fields Modifier and Type Field Description static intINPUT_MODEstatic intOUTPUT_MODE
-
Constructor Summary
Constructors Constructor Description ExpandableBuffer(int buffersize, ByteBufferAllocator allocator)Allocates buffer of the given size using the given allocator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intavailable()Returns available capacity of this buffer.intcapacity()Returns the total capacity of this buffer.booleanhasData()Determines if the buffer contains data.intlength()Returns the length of this buffer.java.lang.StringtoString()
-
-
-
Field Detail
-
INPUT_MODE
public static final int INPUT_MODE
- See Also:
- Constant Field Values
-
OUTPUT_MODE
public static final int OUTPUT_MODE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ExpandableBuffer
public ExpandableBuffer(int buffersize, ByteBufferAllocator allocator)Allocates buffer of the given size using the given allocator.- Parameters:
buffersize- the buffer size.allocator- allocator to be used to allocateByteBuffers.
-
-
Method Detail
-
capacity
public int capacity()
Returns the total capacity of this buffer.- Specified by:
capacityin interfaceBufferInfo- Specified by:
capacityin interfaceBufferInfo- Returns:
- total capacity.
-
hasData
public boolean hasData()
Determines if the buffer contains data.- Returns:
trueif there is data in the buffer,falseotherwise.
-
length
public int length()
Returns the length of this buffer.- Specified by:
lengthin interfaceBufferInfo- Specified by:
lengthin interfaceBufferInfo- Returns:
- buffer length.
-
available
public int available()
Returns available capacity of this buffer.- Specified by:
availablein interfaceBufferInfo- Specified by:
availablein interfaceBufferInfo- Returns:
- buffer length.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-