Package org.apache.http.impl.nio.reactor
Class SessionOutputBufferImpl
java.lang.Object
org.apache.http.nio.util.ExpandableBuffer
org.apache.http.impl.nio.reactor.SessionOutputBufferImpl
- All Implemented Interfaces:
BufferInfo
,SessionOutputBuffer
,BufferInfo
Default implementation of
SessionOutputBuffer
based on
the ExpandableBuffer
class.- Since:
- 4.0
-
Field Summary
Fields inherited from class org.apache.http.nio.util.ExpandableBuffer
INPUT_MODE, OUTPUT_MODE
-
Constructor Summary
ConstructorsConstructorDescriptionSessionOutputBufferImpl
(int buffersize) SessionOutputBufferImpl
(int buffersize, int linebuffersize) SessionOutputBufferImpl
(int buffersize, int linebuffersize, Charset charset) SessionOutputBufferImpl
(int buffersize, int lineBuffersize, CharsetEncoder charencoder, ByteBufferAllocator allocator) Creates SessionOutputBufferImpl instance.SessionOutputBufferImpl
(int buffersize, int lineBuffersize, ByteBufferAllocator allocator, HttpParams params) Deprecated.SessionOutputBufferImpl
(int buffersize, int linebuffersize, HttpParams params) Deprecated. -
Method Summary
Modifier and TypeMethodDescriptionint
flush
(WritableByteChannel channel) Makes an attempt to flush the content of this buffer to the given destinationWritableByteChannel
.void
reset
(HttpParams params) void
write
(ByteBuffer src) Copies content of the source buffer into this buffer.void
write
(ReadableByteChannel src) Reads a sequence of bytes from the source channel into this buffer.void
Copies content of the given string into this buffer as one line of text including a line delimiter.void
writeLine
(CharArrayBuffer linebuffer) Copies content of the source buffer into this buffer as one line of text including a line delimiter.Methods inherited from class org.apache.http.nio.util.ExpandableBuffer
available, capacity, hasData, length, toString
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.http.nio.reactor.SessionOutputBuffer
hasData, length
-
Constructor Details
-
SessionOutputBufferImpl
public SessionOutputBufferImpl(int buffersize, int lineBuffersize, CharsetEncoder charencoder, ByteBufferAllocator allocator) Creates SessionOutputBufferImpl instance.- Parameters:
buffersize
- input buffer sizelineBuffersize
- buffer size for line operations. Has effect only ifcharencoder
is notnull
.charencoder
- charencoder to be used for encoding HTTP protocol elements. Ifnull
simple type cast will be used for char to byte conversion.allocator
- memory allocator. Ifnull
HeapByteBufferAllocator.INSTANCE
will be used.- Since:
- 4.3
-
SessionOutputBufferImpl
@Deprecated public SessionOutputBufferImpl(int buffersize, int lineBuffersize, ByteBufferAllocator allocator, HttpParams params) Deprecated. -
SessionOutputBufferImpl
Deprecated. -
SessionOutputBufferImpl
public SessionOutputBufferImpl(int buffersize) - Since:
- 4.3
-
SessionOutputBufferImpl
- Since:
- 4.3
-
SessionOutputBufferImpl
public SessionOutputBufferImpl(int buffersize, int linebuffersize) - Since:
- 4.3
-
-
Method Details
-
reset
-
flush
Description copied from interface:SessionOutputBuffer
Makes an attempt to flush the content of this buffer to the given destinationWritableByteChannel
.- Specified by:
flush
in interfaceSessionOutputBuffer
- Parameters:
channel
- the destination channel.- Returns:
- The number of bytes written, possibly zero.
- Throws:
IOException
- in case of an I/O error.
-
write
Description copied from interface:SessionOutputBuffer
Copies content of the source buffer into this buffer. The capacity of the destination will be expanded in order to accommodate the entire content of the source buffer.- Specified by:
write
in interfaceSessionOutputBuffer
- Parameters:
src
- the source buffer.
-
write
Description copied from interface:SessionOutputBuffer
Reads a sequence of bytes from the source channel into this buffer.- Specified by:
write
in interfaceSessionOutputBuffer
- Parameters:
src
- the source channel.- Throws:
IOException
-
writeLine
Description copied from interface:SessionOutputBuffer
Copies content of the source buffer into this buffer as one line of text including a line delimiter. The capacity of the destination will be expanded in order to accommodate the entire content of the source buffer.The choice of a char encoding and line delimiter sequence is up to the specific implementations of this interface.
- Specified by:
writeLine
in interfaceSessionOutputBuffer
- Parameters:
linebuffer
- the source buffer.- Throws:
CharacterCodingException
-
writeLine
Description copied from interface:SessionOutputBuffer
Copies content of the given string into this buffer as one line of text including a line delimiter. The capacity of the destination will be expanded in order to accommodate the entire string.The choice of a char encoding and line delimiter sequence is up to the specific implementations of this interface.
- Specified by:
writeLine
in interfaceSessionOutputBuffer
- Parameters:
s
- the string.- Throws:
IOException
-
SessionOutputBufferImpl(int, int, CharsetEncoder, ByteBufferAllocator)