|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectorg.apache.http.nio.protocol.ThrottlingHttpServiceHandler
HTTP service handler implementation that allocates content buffers of limited size upon initialization and is capable of controlling the frequency of I/O events in order to guarantee those content buffers do not ever get overflown. This helps ensure near constant memory footprint of HTTP connections and to avoid the 'out of memory' condition while streaming out response content.
The service handler will delegate the task of processing requests and
generating response content to an Executor, which is expected to
perform those tasks using dedicated worker threads in order to avoid
blocking the I/O thread.
HttpNIOParams.CONTENT_BUFFER_SIZE| Constructor Summary | |
ThrottlingHttpServiceHandler(org.apache.http.protocol.HttpProcessor httpProcessor,
org.apache.http.HttpResponseFactory responseFactory,
org.apache.http.ConnectionReuseStrategy connStrategy,
org.apache.http.util.concurrent.Executor executor,
org.apache.http.params.HttpParams params)
|
|
| Method Summary | |
void |
closed(NHttpServerConnection conn)
Triggered when the connection is closed. |
void |
connected(NHttpServerConnection conn)
Triggered when a new incoming connection is created. |
void |
exception(NHttpServerConnection conn,
org.apache.http.HttpException httpex)
Triggered when an HTTP protocol violation occurs while receiving an HTTP request. |
void |
exception(NHttpServerConnection conn,
java.io.IOException ex)
Triggered when an I/O error occurrs while reading from or writing to the underlying channel. |
org.apache.http.params.HttpParams |
getParams()
|
void |
inputReady(NHttpServerConnection conn,
ContentDecoder decoder)
Triggered when the underlying channel is ready for reading a new portion of the request entity through the corresponding content decoder. |
void |
outputReady(NHttpServerConnection conn,
ContentEncoder encoder)
Triggered when the underlying channel is ready for writing a next portion of the response entity through the corresponding content encoder. |
void |
requestReceived(NHttpServerConnection conn)
Triggered when a new HTTP request is received. |
void |
responseReady(NHttpServerConnection conn)
Triggered when the connection is ready to send an HTTP response. |
void |
setEventListener(EventListener eventListener)
|
void |
setExpectationVerifier(org.apache.http.protocol.HttpExpectationVerifier expectationVerifier)
|
void |
setHandlerResolver(org.apache.http.protocol.HttpRequestHandlerResolver handlerResolver)
|
void |
timeout(NHttpServerConnection conn)
Triggered when no input is detected on this connection over the maximum period of inactivity. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public ThrottlingHttpServiceHandler(org.apache.http.protocol.HttpProcessor httpProcessor,
org.apache.http.HttpResponseFactory responseFactory,
org.apache.http.ConnectionReuseStrategy connStrategy,
org.apache.http.util.concurrent.Executor executor,
org.apache.http.params.HttpParams params)
| Method Detail |
public void setEventListener(EventListener eventListener)
public void setHandlerResolver(org.apache.http.protocol.HttpRequestHandlerResolver handlerResolver)
public void setExpectationVerifier(org.apache.http.protocol.HttpExpectationVerifier expectationVerifier)
public org.apache.http.params.HttpParams getParams()
public void connected(NHttpServerConnection conn)
NHttpServiceHandler
connected in interface NHttpServiceHandlerconn - closed HTTP connection.public void closed(NHttpServerConnection conn)
NHttpServiceHandler
closed in interface NHttpServiceHandlerconn - closed HTTP connection.
public void exception(NHttpServerConnection conn,
org.apache.http.HttpException httpex)
NHttpServiceHandler
exception in interface NHttpServiceHandlerconn - HTTP connection that caused an HTTP protocol violationhttpex - HTTP protocol violation exception
public void exception(NHttpServerConnection conn,
java.io.IOException ex)
NHttpServiceHandler
exception in interface NHttpServiceHandlerconn - HTTP connection that caused an I/O errorex - I/O exceptionpublic void timeout(NHttpServerConnection conn)
NHttpServiceHandler
timeout in interface NHttpServiceHandlerconn - HTTP connection that caused timeout condition.public void requestReceived(NHttpServerConnection conn)
NHttpServiceHandlerNHttpServiceHandler.inputReady(NHttpServerConnection, ContentDecoder) calls
to transfer the request content.
requestReceived in interface NHttpServiceHandlerconn - HTTP connection that contains a new HTTP requestNHttpServerConnection
public void inputReady(NHttpServerConnection conn,
ContentDecoder decoder)
NHttpServiceHandlerIOControl.suspendInput().
inputReady in interface NHttpServiceHandlerconn - HTTP connection that can produce a new portion of the
incoming request content.decoder - The content decoder to use to read content.NHttpConnection,
ContentDecoderpublic void responseReady(NHttpServerConnection conn)
NHttpServiceHandler
responseReady in interface NHttpServiceHandlerconn - HTTP connection that contains an HTTP responseNHttpServerConnection
public void outputReady(NHttpServerConnection conn,
ContentEncoder encoder)
NHttpServiceHandlerIOControl.suspendOutput().
outputReady in interface NHttpServiceHandlerconn - HTTP connection that can accommodate a new portion
of the outgoing response content.encoder - The content encoder to use to write content.NHttpConnection,
ContentEncoder
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||