A client-side request director.
The director decides which steps are necessary to execute a request.
It establishes connections and optionally processes redirects and
authentication challenges. The director may therefore generate and
send a sequence of requests in order to execute one initial request.
It is most likely that implementations of this interface will
allocate connections, and return responses that depend on those
connections for reading the response entity. Such connections
MUST be released, but that is out of the scope of a request director.
Executes a request.
For the time being, a new director is instantiated for each request.
This is the same behavior as for
in HttpClient 3.
||the target host for the request.
Implementations may accept
if they can still determine a route, for example
to a default target or by inspecting the request.
||the request to execute
||the context for executing the request
- the final response to the request.
This is never an intermediate response with status code 1xx.