Class AbstractHttpServerConnection
- All Implemented Interfaces:
Closeable,AutoCloseable,HttpConnection,HttpServerConnection
- Direct Known Subclasses:
SocketHttpServerConnection
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 HttpRequestFactoryDeprecated.Creates an instance ofDefaultHttpRequestFactoryto be used for creatingHttpRequestobjects received by over this connection.protected HttpMessageParser<HttpRequest> createRequestParser(SessionInputBuffer buffer, HttpRequestFactory requestFactory, HttpParams params) Deprecated.Creates an instance ofHttpMessageParserto be used for parsing HTTP requests received over this connection.protected HttpMessageWriter<HttpResponse> createResponseWriter(SessionOutputBuffer buffer, HttpParams params) Deprecated.Creates an instance ofHttpMessageWriterto be used for writing out HTTP responses sent over this connection.protected voiddoFlush()Deprecated.voidflush()Deprecated.Sends all pending buffered data over this connection.Deprecated.Returns a collection of connection metrics.protected voidinit(SessionInputBuffer inBuffer, SessionOutputBuffer outbuffer, HttpParams params) Deprecated.Initializes this connection object withSessionInputBufferandSessionOutputBufferinstances to be used for sending and receiving data.protected booleanisEof()Deprecated.booleanisStale()Deprecated.Checks whether this connection has gone down.voidDeprecated.Receives the next request entity available from this connection and attaches it to an existing request.Deprecated.Receives the request line and all headers available from this connection.voidsendResponseEntity(HttpResponse response) Deprecated.Sends the response entity of a response over this connection.voidsendResponseHeader(HttpResponse response) Deprecated.Sends the response line and headers of a response over this 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
-
AbstractHttpServerConnection
public AbstractHttpServerConnection()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.
-
createHttpRequestFactory
Deprecated.Creates an instance ofDefaultHttpRequestFactoryto be used for creatingHttpRequestobjects received by over this connection.This method can be overridden in a super class in order to provide a different implementation of the
HttpRequestFactoryinterface.- Returns:
- HTTP request factory.
-
createRequestParser
protected HttpMessageParser<HttpRequest> createRequestParser(SessionInputBuffer buffer, HttpRequestFactory requestFactory, HttpParams params) Deprecated.Creates an instance ofHttpMessageParserto be used for parsing HTTP requests 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 theDefaultHttpRequestParserconstructor.- Parameters:
buffer- the session input buffer.requestFactory- the HTTP request factory.params- HTTP parameters.- Returns:
- HTTP message parser.
-
createResponseWriter
protected HttpMessageWriter<HttpResponse> createResponseWriter(SessionOutputBuffer buffer, HttpParams params) Deprecated.Creates an instance ofHttpMessageWriterto be used for writing out HTTP responses 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 implementationHttpResponseWriter.- 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
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
createHttpRequestFactory(),createRequestParser(SessionInputBuffer, HttpRequestFactory, HttpParams)andcreateResponseWriter(SessionOutputBuffer, HttpParams)methods to initialize HTTP request parser and response writer for this connection.- Parameters:
inBuffer- the session input buffer.outbuffer- the session output buffer.params- HTTP parameters.
-
receiveRequestHeader
Deprecated.Description copied from interface:HttpServerConnectionReceives the request line and all headers available from this connection. The caller should examine the returned request and decide if to receive a request entity as well.- Specified by:
receiveRequestHeaderin interfaceHttpServerConnection- Returns:
- a new HttpRequest object whose request line and headers are initialized.
- Throws:
HttpException- in case of HTTP protocol violationIOException- in case of an I/O error
-
receiveRequestEntity
public void receiveRequestEntity(HttpEntityEnclosingRequest request) throws HttpException, IOException Deprecated.Description copied from interface:HttpServerConnectionReceives the next request entity available from this connection and attaches it to an existing request.- Specified by:
receiveRequestEntityin interfaceHttpServerConnection- Parameters:
request- the request to attach the entity to.- 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:HttpServerConnectionSends all pending buffered data over this connection.- Specified by:
flushin interfaceHttpServerConnection- Throws:
IOException- in case of an I/O error
-
sendResponseHeader
Deprecated.Description copied from interface:HttpServerConnectionSends the response line and headers of a response over this connection.- Specified by:
sendResponseHeaderin interfaceHttpServerConnection- Parameters:
response- the response whose headers to send.- Throws:
HttpException- in case of HTTP protocol violationIOException- in case of an I/O error
-
sendResponseEntity
Deprecated.Description copied from interface:HttpServerConnectionSends the response entity of a response over this connection.- Specified by:
sendResponseEntityin interfaceHttpServerConnection- Parameters:
response- the response whose entity to send.- 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
-
DefaultBHttpServerConnection