org.apache.http.impl.execchain
Interface ClientExecChain
- All Known Implementing Classes:
- BackoffStrategyExec, MainClientExec, MinimalClientExec, ProtocolExec, RedirectExec, RetryExec, ServiceUnavailableRetryExec
public interface ClientExecChain
This interface represents an element in the HTTP request execution chain. Each element can
either be a decorator around another element that implements a cross cutting aspect or
a self-contained executor capable of producing a response for the given request.
Important: please note it is required for decorators that implement post execution aspects
or response post-processing of any sort to release resources associated with the response
by calling Closeable.close()
methods in case of an I/O, protocol or
runtime exception, or in case the response is not propagated to the caller.
- Since:
- 4.3
execute
CloseableHttpResponse execute(HttpRoute route,
HttpRequestWrapper request,
HttpClientContext clientContext,
HttpExecutionAware execAware)
throws IOException,
HttpException
- Executes th request either by transmitting it to the target server or
by passing it onto the next executor in the request execution chain.
- Parameters:
route
- connection route.request
- current request.clientContext
- current HTTP context.execAware
- receiver of notifications of blocking I/O operations.
- Returns:
- HTTP response either received from the opposite endpoint
or generated locally.
- Throws:
IOException
- in case of a I/O error.
(this type of exceptions are potentially recoverable).
HttpException
- in case of an HTTP protocol error
(usually this type of exceptions are non-recoverable).
Copyright © 1999–2014 The Apache Software Foundation. All rights reserved.