org.apache.http.conn.routing

## Interface HttpRoutePlanner

All Known Implementing Classes:
  DefaultHttpRoutePlanner, DefaultProxyRoutePlanner, DefaultRoutePlanner, ProxySelectorRoutePlanner, SystemDefaultRoutePlanner

    public interface HttpRoutePlanner

Encapsulates logic to compute a `HttpRoute` to a target host. Implementations may for example be based on parameters, or on the standard Java system properties.

Implementations of this interface must be thread-safe. Access to shared data must be synchronized as methods of this interface may be executed from multiple threads.

Since:
  4.0

### Method Summary

Methods
`HttpRoute` `determineRoute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.protocol.HttpContext context)` Determines the route for a request.

### Method Detail

#### determineRoute

    HttpRoute determineRoute(org.apache.http.HttpHost target,
                           org.apache.http.HttpRequest request,
                           org.apache.http.protocol.HttpContext context)
                             throws org.apache.http.HttpException

Determines the route for a request.

Parameters:
  `target` - the target host for the request. Implementations may accept `null` if they can still determine a route, for example to a default target or by inspecting the request.
  `request` - the request to execute
  `context` - the context to use for the subsequent execution. Implementations may accept `null`.
Returns:
  the route that the request should take
Throws:
  `org.apache.http.HttpException` - in case of a problem