public class DefaultBHttpClientConnection extends BHttpConnectionBase implements HttpClientConnection
HttpClientConnection
.Constructor and Description |
---|
DefaultBHttpClientConnection(int bufferSize) |
DefaultBHttpClientConnection(int bufferSize,
CharsetDecoder charDecoder,
CharsetEncoder charEncoder,
MessageConstraints constraints) |
DefaultBHttpClientConnection(int bufferSize,
int fragmentSizeHint,
CharsetDecoder charDecoder,
CharsetEncoder charEncoder,
MessageConstraints constraints,
ContentLengthStrategy incomingContentStrategy,
ContentLengthStrategy outgoingContentStrategy,
HttpMessageWriterFactory<HttpRequest> requestWriterFactory,
HttpMessageParserFactory<HttpResponse> responseParserFactory)
Creates new instance of DefaultBHttpClientConnection.
|
Modifier and Type | Method and Description |
---|---|
void |
bind(Socket socket)
Binds this connection to the given
Socket . |
void |
flush()
Writes out all pending buffered data over the open connection.
|
boolean |
isResponseAvailable(int timeout)
Checks if response data is available from the connection.
|
protected void |
onRequestSubmitted(HttpRequest request) |
protected void |
onResponseReceived(HttpResponse response) |
void |
receiveResponseEntity(HttpResponse response)
Receives the next response entity available from this connection and
attaches it to an existing HttpResponse object.
|
HttpResponse |
receiveResponseHeader()
Receives the request line and headers of the next response available from
this connection.
|
void |
sendRequestEntity(HttpEntityEnclosingRequest request)
Sends the request entity over the connection.
|
void |
sendRequestHeader(HttpRequest request)
Sends the request line and all headers over the connection.
|
awaitInput, close, createInputStream, createOutputStream, doFlush, ensureOpen, getLocalAddress, getLocalPort, getMetrics, getRemoteAddress, getRemotePort, getSessionInputBuffer, getSessionOutputBuffer, getSocket, getSocketInputStream, getSocketOutputStream, getSocketTimeout, incrementRequestCount, incrementResponseCount, isOpen, isStale, prepareInput, prepareOutput, setSocketTimeout, shutdown, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
close, getMetrics, getSocketTimeout, isOpen, isStale, setSocketTimeout, shutdown
public DefaultBHttpClientConnection(int bufferSize, int fragmentSizeHint, CharsetDecoder charDecoder, CharsetEncoder charEncoder, MessageConstraints constraints, ContentLengthStrategy incomingContentStrategy, ContentLengthStrategy outgoingContentStrategy, HttpMessageWriterFactory<HttpRequest> requestWriterFactory, HttpMessageParserFactory<HttpResponse> responseParserFactory)
bufferSize
- buffer size. Must be a positive number.fragmentSizeHint
- fragment size hint.charDecoder
- decoder to be used for decoding HTTP protocol elements.
If null
simple type cast will be used for byte to char conversion.charEncoder
- encoder to be used for encoding HTTP protocol elements.
If null
simple type cast will be used for char to byte conversion.constraints
- Message constraints. If null
MessageConstraints.DEFAULT
will be used.incomingContentStrategy
- incoming content length strategy. If null
LaxContentLengthStrategy.INSTANCE
will be used.outgoingContentStrategy
- outgoing content length strategy. If null
StrictContentLengthStrategy.INSTANCE
will be used.requestWriterFactory
- request writer factory. If null
DefaultHttpRequestWriterFactory.INSTANCE
will be used.responseParserFactory
- response parser factory. If null
DefaultHttpResponseParserFactory.INSTANCE
will be used.public DefaultBHttpClientConnection(int bufferSize, CharsetDecoder charDecoder, CharsetEncoder charEncoder, MessageConstraints constraints)
public DefaultBHttpClientConnection(int bufferSize)
protected void onResponseReceived(HttpResponse response)
protected void onRequestSubmitted(HttpRequest request)
public void bind(Socket socket) throws IOException
BHttpConnectionBase
Socket
. This socket will be
used by the connection to send and receive data.
After this method's execution the connection status will be reported
as open and the BHttpConnectionBase.isOpen()
will return true
.
bind
in class BHttpConnectionBase
socket
- the socket.IOException
- in case of an I/O error.public boolean isResponseAvailable(int timeout) throws IOException
HttpClientConnection
isResponseAvailable
in interface HttpClientConnection
timeout
- the maximum time in milliseconds to wait for datatimeout
milliseconds.IOException
- if an error happens on the connectionpublic void sendRequestHeader(HttpRequest request) throws HttpException, IOException
HttpClientConnection
sendRequestHeader
in interface HttpClientConnection
request
- the request whose headers to send.HttpException
- in case of HTTP protocol violationIOException
- in case of an I/O errorpublic void sendRequestEntity(HttpEntityEnclosingRequest request) throws HttpException, IOException
HttpClientConnection
sendRequestEntity
in interface HttpClientConnection
request
- the request whose entity to send.HttpException
- in case of HTTP protocol violationIOException
- in case of an I/O errorpublic HttpResponse receiveResponseHeader() throws HttpException, IOException
HttpClientConnection
receiveResponseHeader
in interface HttpClientConnection
HttpException
- in case of HTTP protocol violationIOException
- in case of an I/O errorpublic void receiveResponseEntity(HttpResponse response) throws HttpException, IOException
HttpClientConnection
receiveResponseEntity
in interface HttpClientConnection
response
- the response to attach the entity toHttpException
- in case of HTTP protocol violationIOException
- in case of an I/O errorpublic void flush() throws IOException
HttpClientConnection
flush
in interface HttpClientConnection
IOException
- in case of an I/O errorCopyright © 2005–2022 The Apache Software Foundation. All rights reserved.