| java.lang.Object org.apache.http.protocol.HttpRequestExecutor
HttpRequestExecutor | public class HttpRequestExecutor (Code) | | Sends HTTP requests and receives the responses.
Takes care of request preprocessing and response postprocessing
by the respective interceptors.
author: Oleg Kalnichevski version: $Revision: 576073 $ since: 4.0 |
Method Summary | |
protected boolean | canResponseHaveBody(HttpRequest request, HttpResponse response) Decide whether a response comes with an entity. | protected HttpResponse | doReceiveResponse(HttpRequest request, HttpClientConnection conn, HttpContext context) Wait for and receive a response. | protected HttpResponse | doSendRequest(HttpRequest request, HttpClientConnection conn, HttpContext context) Send a request over a connection. | public HttpResponse | execute(HttpRequest request, HttpClientConnection conn, HttpContext context) Synchronously send a request and obtain the response.
Parameters: request - the request to send. | public void | postProcess(HttpResponse response, HttpProcessor processor, HttpContext context) Finish a response. | public void | preProcess(HttpRequest request, HttpProcessor processor, HttpContext context) Prepare a request for sending. |
HttpRequestExecutor | public HttpRequestExecutor()(Code) | | Create a new request executor.
|
canResponseHaveBody | protected boolean canResponseHaveBody(HttpRequest request, HttpResponse response)(Code) | | Decide whether a response comes with an entity.
The implementation in this class is based on RFC 2616.
Unknown methods and response codes are supposed to
indicate responses with an entity.
Derived executors can override this method to handle
methods and response codes not specified in RFC 2616.
Parameters: request - the request, to obtain the executed method Parameters: response - the response, to obtain the status code |
doReceiveResponse | protected HttpResponse doReceiveResponse(HttpRequest request, HttpClientConnection conn, HttpContext context) throws HttpException, IOException(Code) | | Wait for and receive a response.
This method will automatically ignore intermediate responses
with status code 1xx.
Parameters: request - the request for which to obtain the response Parameters: conn - the connection over which the request was sent Parameters: context - the context for receiving the response the final response, not yet post-processed throws: HttpException - in case of a protocol or processing problem throws: IOException - in case of an I/O problem |
doSendRequest | protected HttpResponse doSendRequest(HttpRequest request, HttpClientConnection conn, HttpContext context) throws IOException, HttpException(Code) | | Send a request over a connection.
This method also handles the expect-continue handshake if necessary.
If it does not have to handle an expect-continue handshake, it will
not use the connection for reading or anything else that depends on
data coming in over the connection.
Parameters: request - the request to send, alreadyHttpRequestExecutor.preProcess preprocessed Parameters: conn - the connection over which to send the request,already established Parameters: context - the context for sending the request a terminal response received as part of an expect-continuehandshake, ornull if the expect-continue handshake is not used throws: HttpException - in case of a protocol or processing problem throws: IOException - in case of an I/O problem |
postProcess | public void postProcess(HttpResponse response, HttpProcessor processor, HttpContext context) throws HttpException, IOException(Code) | | Finish a response.
This includes post-processing of the response object.
It does not read the response entity, if any.
It does not allow for immediate re-use of the
connection over which the response is coming in.
Parameters: response - the response object to finish Parameters: processor - the processor to use Parameters: context - the context for post-processing the response throws: HttpException - in case of a protocol or processing problem throws: IOException - in case of an I/O problem |
|
|