Package org.apache.http.protocol
Class HttpRequestExecutor
java.lang.Object
org.apache.http.protocol.HttpRequestExecutor
HttpRequestExecutor
is a client side HTTP protocol handler based
on the blocking (classic) I/O model.
HttpRequestExecutor
relies on HttpProcessor
to generate
mandatory protocol headers for all outgoing messages and apply common,
cross-cutting message transformations to all incoming and outgoing messages.
Application specific processing can be implemented outside
HttpRequestExecutor
once the request has been executed and
a response has been received.
- Since:
- 4.0
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionHttpRequestExecutor
(int waitForContinue) Creates new instance of HttpRequestExecutor. -
Method Summary
Modifier and TypeMethodDescriptionexecute
(HttpRequest request, HttpClientConnection conn, HttpContext context) Sends the request and obtain a response.void
postProcess
(HttpResponse response, HttpProcessor processor, HttpContext context) Post-processes the given response using the given protocol processor and completes the process of request execution.void
preProcess
(HttpRequest request, HttpProcessor processor, HttpContext context) Pre-process the given request using the given protocol processor and initiates the process of request execution.
-
Field Details
-
DEFAULT_WAIT_FOR_CONTINUE
public static final int DEFAULT_WAIT_FOR_CONTINUE- See Also:
-
-
Constructor Details
-
HttpRequestExecutor
public HttpRequestExecutor(int waitForContinue) Creates new instance of HttpRequestExecutor.- Since:
- 4.3
-
HttpRequestExecutor
public HttpRequestExecutor()
-
-
Method Details
-
execute
public HttpResponse execute(HttpRequest request, HttpClientConnection conn, HttpContext context) throws IOException, HttpException Sends the request and obtain a response.- Parameters:
request
- the request to execute.conn
- the connection over which to execute the request.- Returns:
- the response to the request.
- Throws:
IOException
- in case of an I/O error.HttpException
- in case of HTTP protocol violation or a processing problem.
-
preProcess
public void preProcess(HttpRequest request, HttpProcessor processor, HttpContext context) throws HttpException, IOException Pre-process the given request using the given protocol processor and initiates the process of request execution.- Parameters:
request
- the request to prepareprocessor
- the processor to usecontext
- the context for sending the request- Throws:
IOException
- in case of an I/O error.HttpException
- in case of HTTP protocol violation or a processing problem.
-
postProcess
public void postProcess(HttpResponse response, HttpProcessor processor, HttpContext context) throws HttpException, IOException Post-processes the given response using the given protocol processor and completes the process of request execution.This method does not read the response entity, if any. The connection over which content of the response entity is being streamed from cannot be reused until
EntityUtils.consume(org.apache.http.HttpEntity)
has been invoked.- Parameters:
response
- the response object to post-processprocessor
- the processor to usecontext
- the context for post-processing the response- Throws:
IOException
- in case of an I/O error.HttpException
- in case of HTTP protocol violation or a processing problem.
-