public class DefaultNHttpClientConnection extends NHttpConnectionBase implements NHttpClientIOTarget
NHttpClientConnection
interface.| Modifier and Type | Field and Description |
|---|---|
protected NHttpMessageWriter<HttpRequest> |
requestWriter |
protected NHttpMessageParser<HttpResponse> |
responseParser |
connMetrics, contentDecoder, contentEncoder, context, hasBufferedInput, hasBufferedOutput, inbuf, incomingContentStrategy, inTransportMetrics, outbuf, outgoingContentStrategy, outTransportMetrics, remote, request, response, session, statusACTIVE, CLOSED, CLOSING| Constructor and Description |
|---|
DefaultNHttpClientConnection(IOSession session,
HttpResponseFactory responseFactory,
ByteBufferAllocator allocator,
HttpParams params)
|
DefaultNHttpClientConnection(IOSession session,
int bufferSize) |
DefaultNHttpClientConnection(IOSession session,
int bufferSize,
CharsetDecoder charDecoder,
CharsetEncoder charEncoder,
MessageConstraints constraints) |
DefaultNHttpClientConnection(IOSession session,
int bufferSize,
int fragmentSizeHint,
ByteBufferAllocator allocator,
CharsetDecoder charDecoder,
CharsetEncoder charEncoder,
MessageConstraints constraints,
ContentLengthStrategy incomingContentStrategy,
ContentLengthStrategy outgoingContentStrategy,
NHttpMessageWriterFactory<HttpRequest> requestWriterFactory,
NHttpMessageParserFactory<HttpResponse> responseParserFactory)
Creates new instance DefaultNHttpClientConnection given the underlying I/O session.
|
| Modifier and Type | Method and Description |
|---|---|
void |
consumeInput(NHttpClientEventHandler handler) |
void |
consumeInput(NHttpClientHandler handler)
Triggered when the connection is ready to consume input.
|
protected NHttpMessageWriter<HttpRequest> |
createRequestWriter(SessionOutputBuffer buffer,
HttpParams params)
Deprecated.
(4.3) use constructor.
|
protected NHttpMessageParser<HttpResponse> |
createResponseParser(SessionInputBuffer buffer,
HttpResponseFactory responseFactory,
HttpParams params)
Deprecated.
(4.3) use constructor.
|
boolean |
isRequestSubmitted()
Returns
true if an HTTP request has been submitted to the
target server. |
protected void |
onRequestSubmitted(HttpRequest request) |
protected void |
onResponseReceived(HttpResponse response) |
void |
produceOutput(NHttpClientEventHandler handler) |
void |
produceOutput(NHttpClientHandler handler)
Triggered when the connection is ready to produce output.
|
void |
resetInput()
Resets input state.
|
void |
resetOutput()
Resets output state.
|
void |
submitRequest(HttpRequest request)
Submits
HttpRequest to be sent to the target server. |
assertNotClosed, bind, close, createConnectionMetrics, createContentDecoder, createContentEncoder, createIncomingContentStrategy, 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, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetContext, getHttpRequest, getHttpResponse, getStatusclose, getMetrics, getSocketTimeout, isOpen, isStale, setSocketTimeout, shutdownrequestInput, requestOutput, shutdown, suspendInput, suspendOutputprotected final NHttpMessageParser<HttpResponse> responseParser
protected final NHttpMessageWriter<HttpRequest> requestWriter
@Deprecated public DefaultNHttpClientConnection(IOSession session, HttpResponseFactory responseFactory, ByteBufferAllocator allocator, HttpParams params)
session - the underlying I/O session.responseFactory - HTTP response factory.allocator - byte buffer allocator.params - HTTP parameters.public DefaultNHttpClientConnection(IOSession session, int bufferSize, int fragmentSizeHint, ByteBufferAllocator allocator, CharsetDecoder charDecoder, CharsetEncoder charEncoder, MessageConstraints constraints, ContentLengthStrategy incomingContentStrategy, ContentLengthStrategy outgoingContentStrategy, NHttpMessageWriterFactory<HttpRequest> requestWriterFactory, NHttpMessageParserFactory<HttpResponse> responseParserFactory)
session - the underlying I/O session.bufferSize - buffer size. Must be a positive number.fragmentSizeHint - fragment size hint.allocator - memory allocator.
If null HeapByteBufferAllocator.INSTANCE
will be used.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.public DefaultNHttpClientConnection(IOSession session, int bufferSize, CharsetDecoder charDecoder, CharsetEncoder charEncoder, MessageConstraints constraints)
public DefaultNHttpClientConnection(IOSession session, int bufferSize)
@Deprecated protected NHttpMessageParser<HttpResponse> createResponseParser(SessionInputBuffer buffer, HttpResponseFactory responseFactory, HttpParams params)
NHttpMessageParser to be used
by this connection for parsing incoming HttpResponse messages.
This method can be overridden in a super class in order to provide
a different implementation of the NHttpMessageParser interface.
@Deprecated protected NHttpMessageWriter<HttpRequest> createRequestWriter(SessionOutputBuffer buffer, HttpParams params)
NHttpMessageWriter to be used
by this connection for writing out outgoing HttpRequest messages.
This method can be overridden by a super class in order to provide
a different implementation of the NHttpMessageWriter interface.
protected void onResponseReceived(HttpResponse response)
protected void onRequestSubmitted(HttpRequest request)
public void resetInput()
NHttpClientConnectionresetInput in interface NHttpClientConnectionpublic void resetOutput()
NHttpClientConnectionresetOutput in interface NHttpClientConnectionpublic void consumeInput(NHttpClientEventHandler handler)
public void produceOutput(NHttpClientEventHandler handler)
public void submitRequest(HttpRequest request) throws IOException, HttpException
NHttpClientConnectionHttpRequest to be sent to the target server.submitRequest in interface NHttpClientConnectionrequest - HTTP requestIOException - if I/O error occurs while submitting the requestHttpException - if the HTTP request violates the HTTP protocol.public boolean isRequestSubmitted()
NHttpClientConnectiontrue if an HTTP request has been submitted to the
target server.isRequestSubmitted in interface NHttpClientConnectiontrue if an HTTP request has been submitted,
false otherwise.public void consumeInput(NHttpClientHandler handler)
NHttpClientIOTargetconsumeInput in interface NHttpClientIOTargethandler - the client protocol handler.public void produceOutput(NHttpClientHandler handler)
NHttpClientIOTargetproduceOutput in interface NHttpClientIOTargethandler - the client protocol handler.Copyright © 2005–2022 The Apache Software Foundation. All rights reserved.