Class AbstractHttpClientConnection
- All Implemented Interfaces:
Closeable,AutoCloseable,HttpClientConnection,HttpConnection
- Direct Known Subclasses:
SocketHttpClientConnection
SessionInputBuffer and
SessionOutputBuffer implementations.
The following parameters can be used to customize the behavior of this class:
- Since:
- 4.0
-
Constructor Summary
ConstructorsConstructorDescriptionDeprecated.Creates an instance of this class. -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract voidDeprecated.Asserts if the connection is open.protected HttpConnectionMetricsImplcreateConnectionMetrics(HttpTransportMetrics inTransportMetric, HttpTransportMetrics outTransportMetric) Deprecated.protected EntityDeserializerDeprecated.Creates an instance ofEntityDeserializerwith theLaxContentLengthStrategyimplementation to be used for de-serializing entities received over this connection.protected EntitySerializerDeprecated.Creates an instance ofEntitySerializerwith theStrictContentLengthStrategyimplementation to be used for serializing HTTP entities sent over this connection.protected HttpResponseFactoryDeprecated.Creates an instance ofDefaultHttpResponseFactoryto be used for creatingHttpResponseobjects received by over this connection.protected HttpMessageWriter<HttpRequest> createRequestWriter(SessionOutputBuffer buffer, HttpParams params) Deprecated.Creates an instance ofHttpMessageWriterto be used for writing out HTTP requests sent over this connection.protected HttpMessageParser<HttpResponse> createResponseParser(SessionInputBuffer buffer, HttpResponseFactory responseFactory, HttpParams params) Deprecated.Creates an instance ofHttpMessageParserto be used for parsing HTTP responses received over this connection.protected voiddoFlush()Deprecated.voidflush()Deprecated.Writes out all pending buffered data over the open connection.Deprecated.Returns a collection of connection metrics.protected voidinit(SessionInputBuffer sessionInputBuffer, SessionOutputBuffer sessionOutputBuffer, HttpParams params) Deprecated.Initializes this connection object withSessionInputBufferandSessionOutputBufferinstances to be used for sending and receiving data.protected booleanisEof()Deprecated.booleanisResponseAvailable(int timeout) Deprecated.Checks if response data is available from the connection.booleanisStale()Deprecated.Checks whether this connection has gone down.voidreceiveResponseEntity(HttpResponse response) Deprecated.Receives the next response entity available from this connection and attaches it to an existing HttpResponse object.Deprecated.Receives the request line and headers of the next response available from this connection.voidDeprecated.Sends the request entity over the connection.voidsendRequestHeader(HttpRequest request) Deprecated.Sends the request line and all headers over the connection.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.http.HttpConnection
close, getSocketTimeout, isOpen, setSocketTimeout, shutdown
-
Constructor Details
-
AbstractHttpClientConnection
public AbstractHttpClientConnection()Deprecated.Creates an instance of this class.This constructor will invoke
createEntityDeserializer()andcreateEntitySerializer()methods in order to initialize HTTP entity serializer and deserializer implementations for this connection.
-
-
Method Details
-
assertOpen
Deprecated.Asserts if the connection is open.- Throws:
IllegalStateException- if the connection is not open.
-
createEntityDeserializer
Deprecated.Creates an instance ofEntityDeserializerwith theLaxContentLengthStrategyimplementation to be used for de-serializing entities received over this connection.This method can be overridden in a super class in order to create instances of
EntityDeserializerusing a customContentLengthStrategy.- Returns:
- HTTP entity deserializer
-
createEntitySerializer
Deprecated.Creates an instance ofEntitySerializerwith theStrictContentLengthStrategyimplementation to be used for serializing HTTP entities sent over this connection.This method can be overridden in a super class in order to create instances of
EntitySerializerusing a customContentLengthStrategy.- Returns:
- HTTP entity serialzier.
-
createHttpResponseFactory
Deprecated.Creates an instance ofDefaultHttpResponseFactoryto be used for creatingHttpResponseobjects received by over this connection.This method can be overridden in a super class in order to provide a different implementation of the
HttpResponseFactoryinterface.- Returns:
- HTTP response factory.
-
createResponseParser
protected HttpMessageParser<HttpResponse> createResponseParser(SessionInputBuffer buffer, HttpResponseFactory responseFactory, HttpParams params) Deprecated.Creates an instance ofHttpMessageParserto be used for parsing HTTP responses received over this connection.This method can be overridden in a super class in order to provide a different implementation of the
HttpMessageParserinterface or to pass a different implementation of theLineParserto the theDefaultHttpResponseParserconstructor.- Parameters:
buffer- the session input buffer.responseFactory- the HTTP response factory.params- HTTP parameters.- Returns:
- HTTP message parser.
-
createRequestWriter
protected HttpMessageWriter<HttpRequest> createRequestWriter(SessionOutputBuffer buffer, HttpParams params) Deprecated.Creates an instance ofHttpMessageWriterto be used for writing out HTTP requests sent over this connection.This method can be overridden in a super class in order to provide a different implementation of the
HttpMessageWriterinterface or to pass a different implementation ofLineFormatterto the the default implementationHttpRequestWriter.- Parameters:
buffer- the session output bufferparams- HTTP parameters- Returns:
- HTTP message writer
-
createConnectionMetrics
protected HttpConnectionMetricsImpl createConnectionMetrics(HttpTransportMetrics inTransportMetric, HttpTransportMetrics outTransportMetric) Deprecated.- Since:
- 4.1
-
init
protected void init(SessionInputBuffer sessionInputBuffer, SessionOutputBuffer sessionOutputBuffer, HttpParams params) Deprecated.Initializes this connection object withSessionInputBufferandSessionOutputBufferinstances to be used for sending and receiving data. These session buffers can be bound to any arbitrary physical output medium.This method will invoke
createHttpResponseFactory(),createRequestWriter(SessionOutputBuffer, HttpParams)andcreateResponseParser(SessionInputBuffer, HttpResponseFactory, HttpParams)methods to initialize HTTP request writer and response parser for this connection.- Parameters:
sessionInputBuffer- the session input buffer.sessionOutputBuffer- the session output buffer.params- HTTP parameters.
-
isResponseAvailable
Deprecated.Description copied from interface:HttpClientConnectionChecks if response data is available from the connection. May wait for the specified time until some data becomes available. Note that some implementations may completely ignore the timeout parameter.- Specified by:
isResponseAvailablein interfaceHttpClientConnection- Parameters:
timeout- the maximum time in milliseconds to wait for data- Returns:
- true if data is available; false if there was no data available
even after waiting for
timeoutmilliseconds. - Throws:
IOException- if an error happens on the connection
-
sendRequestHeader
Deprecated.Description copied from interface:HttpClientConnectionSends the request line and all headers over the connection.- Specified by:
sendRequestHeaderin interfaceHttpClientConnection- Parameters:
request- the request whose headers to send.- Throws:
HttpException- in case of HTTP protocol violationIOException- in case of an I/O error
-
sendRequestEntity
Deprecated.Description copied from interface:HttpClientConnectionSends the request entity over the connection.- Specified by:
sendRequestEntityin interfaceHttpClientConnection- Parameters:
request- the request whose entity to send.- Throws:
HttpException- in case of HTTP protocol violationIOException- in case of an I/O error
-
doFlush
Deprecated.- Throws:
IOException
-
flush
Deprecated.Description copied from interface:HttpClientConnectionWrites out all pending buffered data over the open connection.- Specified by:
flushin interfaceHttpClientConnection- Throws:
IOException- in case of an I/O error
-
receiveResponseHeader
Deprecated.Description copied from interface:HttpClientConnectionReceives the request line and headers of the next response available from this connection. The caller should examine the HttpResponse object to find out if it should try to receive a response entity as well.- Specified by:
receiveResponseHeaderin interfaceHttpClientConnection- Returns:
- a new HttpResponse object with status line and headers initialized.
- Throws:
HttpException- in case of HTTP protocol violationIOException- in case of an I/O error
-
receiveResponseEntity
Deprecated.Description copied from interface:HttpClientConnectionReceives the next response entity available from this connection and attaches it to an existing HttpResponse object.- Specified by:
receiveResponseEntityin interfaceHttpClientConnection- Parameters:
response- the response to attach the entity to- Throws:
HttpException- in case of HTTP protocol violationIOException- in case of an I/O error
-
isEof
protected boolean isEof()Deprecated. -
isStale
public boolean isStale()Deprecated.Description copied from interface:HttpConnectionChecks whether this connection has gone down. Network connections may get closed during some time of inactivity for several reasons. The next time a read is attempted on such a connection it will throw an IOException. This method tries to alleviate this inconvenience by trying to find out if a connection is still usable. Implementations may do that by attempting a read with a very small timeout. Thus this method may block for a small amount of time before returning a result. It is therefore an expensive operation.- Specified by:
isStalein interfaceHttpConnection- Returns:
trueif attempts to use this connection are likely to succeed, orfalseif they are likely to fail and this connection should be closed
-
getMetrics
Deprecated.Description copied from interface:HttpConnectionReturns a collection of connection metrics.- Specified by:
getMetricsin interfaceHttpConnection- Returns:
- HttpConnectionMetrics
-
DefaultBHttpClientConnection