|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.http.impl.nio.NHttpConnectionBase
org.apache.http.impl.nio.DefaultNHttpServerConnection
@NotThreadSafe public class DefaultNHttpServerConnection
Default implementation of the NHttpServerConnection interface.
The following parameters can be used to customize the behavior of this class:
CoreProtocolPNames.HTTP_ELEMENT_CHARSETCoreConnectionPNames.SOCKET_BUFFER_SIZECoreConnectionPNames.MAX_HEADER_COUNTCoreConnectionPNames.MAX_LINE_LENGTH
| Field Summary | |
|---|---|
protected NHttpMessageParser<HttpRequest> |
requestParser
|
protected NHttpMessageWriter<HttpResponse> |
responseWriter
|
| Fields inherited from class org.apache.http.impl.nio.NHttpConnectionBase |
|---|
connMetrics, contentDecoder, contentEncoder, context, hasBufferedInput, hasBufferedOutput, inbuf, incomingContentStrategy, inTransportMetrics, outbuf, outgoingContentStrategy, outTransportMetrics, remote, request, response, session, status |
| Fields inherited from interface org.apache.http.nio.NHttpConnection |
|---|
ACTIVE, CLOSED, CLOSING |
| Constructor Summary | |
|---|---|
DefaultNHttpServerConnection(IOSession session,
HttpRequestFactory requestFactory,
ByteBufferAllocator allocator,
HttpParams params)
Creates a new instance of this class given the underlying I/O session. |
|
| Method Summary | |
|---|---|
void |
consumeInput(NHttpServerEventHandler handler)
|
void |
consumeInput(NHttpServiceHandler handler)
Triggered when the connection is ready to consume input. |
protected ContentLengthStrategy |
createIncomingContentStrategy()
|
protected NHttpMessageParser<HttpRequest> |
createRequestParser(SessionInputBuffer buffer,
HttpRequestFactory requestFactory,
HttpParams params)
Creates an instance of NHttpMessageParser to be used
by this connection for parsing incoming HttpRequest messages. |
protected NHttpMessageWriter<HttpResponse> |
createResponseWriter(SessionOutputBuffer buffer,
HttpParams params)
Creates an instance of NHttpMessageWriter to be used
by this connection for writing out outgoing HttpResponse
messages. |
boolean |
isResponseSubmitted()
Returns true if an HTTP response has been submitted to the
client. |
protected void |
onRequestReceived(HttpRequest request)
|
protected void |
onResponseSubmitted(HttpResponse response)
|
void |
produceOutput(NHttpServerEventHandler handler)
|
void |
produceOutput(NHttpServiceHandler handler)
Triggered when the connection is ready to produce output. |
void |
resetInput()
Resets output state. |
void |
resetOutput()
Resets input state. |
void |
submitResponse(HttpResponse response)
Submits {link @HttpResponse} to be sent to the client. |
| Methods inherited from class org.apache.http.impl.nio.NHttpConnectionBase |
|---|
assertNotClosed, bind, close, createConnectionMetrics, createContentDecoder, createContentEncoder, createOutgoingContentStrategy, createTransportMetrics, getContext, getHttpRequest, getHttpResponse, getLocalAddress, getLocalPort, getMetrics, getRemoteAddress, getRemotePort, getSocket, getSocketTimeout, getStatus, hasBufferedInput, hasBufferedOutput, isOpen, isStale, prepareDecoder, prepareEncoder, requestInput, requestOutput, setSocketTimeout, shutdown, suspendInput, suspendOutput, toString |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Methods inherited from interface org.apache.http.nio.NHttpConnection |
|---|
getContext, getHttpRequest, getHttpResponse, getStatus |
| Methods inherited from interface org.apache.http.HttpConnection |
|---|
close, getMetrics, getSocketTimeout, isOpen, isStale, setSocketTimeout, shutdown |
| Methods inherited from interface org.apache.http.nio.IOControl |
|---|
requestInput, requestOutput, shutdown, suspendInput, suspendOutput |
| Field Detail |
|---|
protected final NHttpMessageParser<HttpRequest> requestParser
protected final NHttpMessageWriter<HttpResponse> responseWriter
| Constructor Detail |
|---|
public DefaultNHttpServerConnection(IOSession session,
HttpRequestFactory requestFactory,
ByteBufferAllocator allocator,
HttpParams params)
session - the underlying I/O session.requestFactory - HTTP request factory.allocator - byte buffer allocator.params - HTTP parameters.| Method Detail |
|---|
protected ContentLengthStrategy createIncomingContentStrategy()
createIncomingContentStrategy in class NHttpConnectionBase
protected NHttpMessageParser<HttpRequest> createRequestParser(SessionInputBuffer buffer,
HttpRequestFactory requestFactory,
HttpParams params)
NHttpMessageParser to be used
by this connection for parsing incoming HttpRequest messages.
This method can be overridden in a super class in order to provide
a different implementation of the NHttpMessageParser interface.
protected NHttpMessageWriter<HttpResponse> createResponseWriter(SessionOutputBuffer buffer,
HttpParams params)
NHttpMessageWriter to be used
by this connection for writing out outgoing HttpResponse
messages.
This method can be overridden by a super class in order to provide
a different implementation of the NHttpMessageWriter interface.
protected void onRequestReceived(HttpRequest request)
protected void onResponseSubmitted(HttpResponse response)
public void resetInput()
NHttpServerConnection
resetInput in interface NHttpServerConnectionpublic void resetOutput()
NHttpServerConnection
resetOutput in interface NHttpServerConnectionpublic void consumeInput(NHttpServerEventHandler handler)
public void produceOutput(NHttpServerEventHandler handler)
public void submitResponse(HttpResponse response)
throws IOException,
HttpException
NHttpServerConnection
submitResponse in interface NHttpServerConnectionresponse - HTTP response
IOException - if I/O error occurs while submitting the response
HttpException - if the HTTP response violates the HTTP protocol.public boolean isResponseSubmitted()
NHttpServerConnectiontrue if an HTTP response has been submitted to the
client.
isResponseSubmitted in interface NHttpServerConnectiontrue if an HTTP response has been submitted,
false otherwise.public void consumeInput(NHttpServiceHandler handler)
NHttpServerIOTarget
consumeInput in interface NHttpServerIOTargethandler - the server protocol handler.public void produceOutput(NHttpServiceHandler handler)
NHttpServerIOTarget
produceOutput in interface NHttpServerIOTargethandler - the server protocol handler.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||