DefaultBHttpServerConnection
@Deprecated public abstract class AbstractHttpServerConnection extends Object implements HttpServerConnection
SessionInputBuffer
and
SessionOutputBuffer
implementations.
The following parameters can be used to customize the behavior of this class:
Constructor and Description |
---|
AbstractHttpServerConnection()
Deprecated.
Creates an instance of this class.
|
Modifier and Type | Method and Description |
---|---|
protected abstract void |
assertOpen()
Deprecated.
Asserts if the connection is open.
|
protected HttpConnectionMetricsImpl |
createConnectionMetrics(HttpTransportMetrics inTransportMetric,
HttpTransportMetrics outTransportMetric)
Deprecated.
|
protected EntityDeserializer |
createEntityDeserializer()
Deprecated.
Creates an instance of
EntityDeserializer with the
LaxContentLengthStrategy implementation to be used for
de-serializing entities received over this connection. |
protected EntitySerializer |
createEntitySerializer()
Deprecated.
Creates an instance of
EntitySerializer with the
StrictContentLengthStrategy implementation to be used for
serializing HTTP entities sent over this connection. |
protected HttpRequestFactory |
createHttpRequestFactory()
Deprecated.
Creates an instance of
DefaultHttpRequestFactory to be used
for creating HttpRequest objects received by over this
connection. |
protected HttpMessageParser<HttpRequest> |
createRequestParser(SessionInputBuffer buffer,
HttpRequestFactory requestFactory,
HttpParams params)
Deprecated.
Creates an instance of
HttpMessageParser to be used for parsing
HTTP requests received over this connection. |
protected HttpMessageWriter<HttpResponse> |
createResponseWriter(SessionOutputBuffer buffer,
HttpParams params)
Deprecated.
Creates an instance of
HttpMessageWriter to be used for
writing out HTTP responses sent over this connection. |
protected void |
doFlush()
Deprecated.
|
void |
flush()
Deprecated.
Sends all pending buffered data over this connection.
|
HttpConnectionMetrics |
getMetrics()
Deprecated.
Returns a collection of connection metrics.
|
protected void |
init(SessionInputBuffer inBuffer,
SessionOutputBuffer outbuffer,
HttpParams params)
Deprecated.
Initializes this connection object with
SessionInputBuffer and
SessionOutputBuffer instances to be used for sending and
receiving data. |
protected boolean |
isEof()
Deprecated.
|
boolean |
isStale()
Deprecated.
Checks whether this connection has gone down.
|
void |
receiveRequestEntity(HttpEntityEnclosingRequest request)
Deprecated.
Receives the next request entity available from this connection and attaches it to
an existing request.
|
HttpRequest |
receiveRequestHeader()
Deprecated.
Receives the request line and all headers available from this connection.
|
void |
sendResponseEntity(HttpResponse response)
Deprecated.
Sends the response entity of a response over this connection.
|
void |
sendResponseHeader(HttpResponse response)
Deprecated.
Sends the response line and headers of a response over this connection.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
close, getSocketTimeout, isOpen, setSocketTimeout, shutdown
public AbstractHttpServerConnection()
This constructor will invoke createEntityDeserializer()
and createEntitySerializer()
methods in order to initialize
HTTP entity serializer and deserializer implementations for this
connection.
protected abstract void assertOpen() throws IllegalStateException
IllegalStateException
- if the connection is not open.protected EntityDeserializer createEntityDeserializer()
EntityDeserializer
with the
LaxContentLengthStrategy
implementation 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 EntityDeserializer
using a custom
ContentLengthStrategy
.
protected EntitySerializer createEntitySerializer()
EntitySerializer
with the
StrictContentLengthStrategy
implementation 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 EntitySerializer
using a custom
ContentLengthStrategy
.
protected HttpRequestFactory createHttpRequestFactory()
DefaultHttpRequestFactory
to be used
for creating HttpRequest
objects received by over this
connection.
This method can be overridden in a super class in order to provide
a different implementation of the HttpRequestFactory
interface.
protected HttpMessageParser<HttpRequest> createRequestParser(SessionInputBuffer buffer, HttpRequestFactory requestFactory, HttpParams params)
HttpMessageParser
to 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 HttpMessageParser
interface or
to pass a different implementation of the
LineParser
to the
DefaultHttpRequestParser
constructor.
buffer
- the session input buffer.requestFactory
- the HTTP request factory.params
- HTTP parameters.protected HttpMessageWriter<HttpResponse> createResponseWriter(SessionOutputBuffer buffer, HttpParams params)
HttpMessageWriter
to 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 HttpMessageWriter
interface or
to pass a different implementation of
LineFormatter
to the the default
implementation HttpResponseWriter
.
buffer
- the session output bufferparams
- HTTP parametersprotected HttpConnectionMetricsImpl createConnectionMetrics(HttpTransportMetrics inTransportMetric, HttpTransportMetrics outTransportMetric)
protected void init(SessionInputBuffer inBuffer, SessionOutputBuffer outbuffer, HttpParams params)
SessionInputBuffer
and
SessionOutputBuffer
instances 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)
and createResponseWriter(SessionOutputBuffer, HttpParams)
methods to initialize HTTP request parser and response writer for this
connection.
inBuffer
- the session input buffer.outbuffer
- the session output buffer.params
- HTTP parameters.public HttpRequest receiveRequestHeader() throws HttpException, IOException
HttpServerConnection
receiveRequestHeader
in interface HttpServerConnection
HttpException
- in case of HTTP protocol violationIOException
- in case of an I/O errorpublic void receiveRequestEntity(HttpEntityEnclosingRequest request) throws HttpException, IOException
HttpServerConnection
receiveRequestEntity
in interface HttpServerConnection
request
- the request to attach the entity to.HttpException
- in case of HTTP protocol violationIOException
- in case of an I/O errorprotected void doFlush() throws IOException
IOException
public void flush() throws IOException
HttpServerConnection
flush
in interface HttpServerConnection
IOException
- in case of an I/O errorpublic void sendResponseHeader(HttpResponse response) throws HttpException, IOException
HttpServerConnection
sendResponseHeader
in interface HttpServerConnection
response
- the response whose headers to send.HttpException
- in case of HTTP protocol violationIOException
- in case of an I/O errorpublic void sendResponseEntity(HttpResponse response) throws HttpException, IOException
HttpServerConnection
sendResponseEntity
in interface HttpServerConnection
response
- the response whose entity to send.HttpException
- in case of HTTP protocol violationIOException
- in case of an I/O errorprotected boolean isEof()
public boolean isStale()
HttpConnection
isStale
in interface HttpConnection
true
if attempts to use this connection are
likely to succeed, or false
if they are likely
to fail and this connection should be closedpublic HttpConnectionMetrics getMetrics()
HttpConnection
getMetrics
in interface HttpConnection
Copyright © 2005–2022 The Apache Software Foundation. All rights reserved.