Package org.apache.hc.core5.http.io
Interface SessionOutputBuffer
- All Known Implementing Classes:
SessionOutputBufferImpl
public interface SessionOutputBuffer
Session output buffer for blocking HTTP/1.1 connections.
This interface facilitates intermediate buffering of output data streamed out to an output stream and provides provides methods for writing lines of text.
- Since:
- 4.0
-
Method Summary
Modifier and TypeMethodDescriptionint
Returns available space in the buffer.int
capacity()
Returns total capacity of the buffervoid
flush
(OutputStream outputStream) Flushes this session buffer and forces any buffered output bytes to be written out.ReturnsHttpTransportMetrics
for this session buffer.int
length()
Return length data stored in the buffervoid
write
(byte[] b, int off, int len, OutputStream outputStream) Writeslen
bytes from the specified byte array starting at offsetoff
to this session buffer.void
write
(byte[] b, OutputStream outputStream) Writesb.length
bytes from the specified byte array to this session buffer.void
write
(int b, OutputStream outputStream) Writes the specified byte to this session buffer.void
writeLine
(CharArrayBuffer buffer, OutputStream outputStream) Writes characters from the specified char array followed by a line delimiter to this session buffer.
-
Method Details
-
length
int length()Return length data stored in the buffer- Returns:
- data length
-
capacity
int capacity()Returns total capacity of the buffer- Returns:
- total capacity
-
available
int available()Returns available space in the buffer.- Returns:
- available space.
-
write
Writeslen
bytes from the specified byte array starting at offsetoff
to this session buffer.If
off
is negative, orlen
is negative, oroff+len
is greater than the length of the arrayb
, then anIndexOutOfBoundsException
is thrown.- Parameters:
b
- the data.off
- the start offset in the data.len
- the number of bytes to write.- Throws:
IOException
- if an I/O error occurs.
-
write
Writesb.length
bytes from the specified byte array to this session buffer.- Parameters:
b
- the data.- Throws:
IOException
- if an I/O error occurs.
-
write
Writes the specified byte to this session buffer.- Parameters:
b
- thebyte
.- Throws:
IOException
- if an I/O error occurs.
-
writeLine
Writes characters from the specified char array followed by a line delimiter to this session buffer.The choice of a char encoding and line delimiter sequence is up to the specific implementations of this interface.
- Parameters:
buffer
- the buffer containing chars of the line.- Throws:
IOException
- if an I/O error occurs.
-
flush
Flushes this session buffer and forces any buffered output bytes to be written out. The general contract offlush
is that calling it is an indication that, if any bytes previously written have been buffered by the implementation of the output stream, such bytes should immediately be written to their intended destination.- Throws:
IOException
- if an I/O error occurs.
-
getMetrics
HttpTransportMetrics getMetrics()ReturnsHttpTransportMetrics
for this session buffer.- Returns:
- transport metrics.
-