@NotThreadSafe public class SessionOutputBufferImpl extends java.lang.Object implements org.apache.http.io.SessionOutputBuffer, BufferInfo
OutputStream. This class buffers small chunks of
output data in an internal byte array for optimal output performance.
writeLine(CharArrayBuffer) and writeLine(String) methods
of this class use CR-LF as a line delimiter.| Constructor and Description |
|---|
SessionOutputBufferImpl(org.apache.http.impl.io.HttpTransportMetricsImpl metrics,
int buffersize) |
SessionOutputBufferImpl(org.apache.http.impl.io.HttpTransportMetricsImpl metrics,
int buffersize,
int fragementSizeHint,
java.nio.charset.CharsetEncoder charencoder)
Creates new instance of SessionOutputBufferImpl.
|
| Modifier and Type | Method and Description |
|---|---|
int |
available()
Returns available space in the buffer.
|
void |
bind(java.io.OutputStream outstream) |
int |
capacity()
Returns total capacity of the buffer
|
void |
flush() |
org.apache.http.io.HttpTransportMetrics |
getMetrics() |
boolean |
isBound() |
int |
length()
Return length data stored in the buffer
|
void |
write(byte[] b) |
void |
write(byte[] b,
int off,
int len) |
void |
write(int b) |
void |
writeLine(org.apache.http.util.CharArrayBuffer charbuffer)
Writes characters from the specified char array followed by a line
delimiter to this session buffer.
|
void |
writeLine(java.lang.String s)
Writes characters from the specified string followed by a line delimiter
to this session buffer.
|
public SessionOutputBufferImpl(org.apache.http.impl.io.HttpTransportMetricsImpl metrics,
int buffersize,
int fragementSizeHint,
java.nio.charset.CharsetEncoder charencoder)
metrics - HTTP transport metrics.buffersize - buffer size. Must be a positive number.fragementSizeHint - fragment size hint defining a minimal size of a fragment
that should be written out directly to the socket bypassing the session buffer.
Value 0 disables fragment buffering.charencoder - charencoder to be used for encoding HTTP protocol elements.
If null simple type cast will be used for char to byte conversion.public SessionOutputBufferImpl(org.apache.http.impl.io.HttpTransportMetricsImpl metrics,
int buffersize)
public void bind(java.io.OutputStream outstream)
public boolean isBound()
public int capacity()
BufferInfocapacity in interface BufferInfopublic int length()
BufferInfolength in interface BufferInfopublic int available()
BufferInfoavailable in interface BufferInfopublic void flush()
throws java.io.IOException
flush in interface org.apache.http.io.SessionOutputBufferjava.io.IOExceptionpublic void write(byte[] b,
int off,
int len)
throws java.io.IOException
write in interface org.apache.http.io.SessionOutputBufferjava.io.IOExceptionpublic void write(byte[] b)
throws java.io.IOException
write in interface org.apache.http.io.SessionOutputBufferjava.io.IOExceptionpublic void write(int b)
throws java.io.IOException
write in interface org.apache.http.io.SessionOutputBufferjava.io.IOExceptionpublic void writeLine(java.lang.String s)
throws java.io.IOException
This method uses CR-LF as a line delimiter.
writeLine in interface org.apache.http.io.SessionOutputBuffers - the line.java.io.IOException - if an I/O error occurs.public void writeLine(org.apache.http.util.CharArrayBuffer charbuffer)
throws java.io.IOException
This method uses CR-LF as a line delimiter.
writeLine in interface org.apache.http.io.SessionOutputBuffercharbuffer - the buffer containing chars of the line.java.io.IOException - if an I/O error occurs.public org.apache.http.io.HttpTransportMetrics getMetrics()
getMetrics in interface org.apache.http.io.SessionOutputBufferCopyright © 1999-2015 The Apache Software Foundation. All rights reserved.