## org.apache.http.impl.conn
Class DefaultHttpRoutePlanner

    java.lang.Object
      org.apache.http.impl.conn.DefaultHttpRoutePlanner

All Implemented Interfaces:
  HttpRoutePlanner

    @ThreadSafe
    public class DefaultHttpRoutePlanner

extends Object
implements HttpRoutePlanner

Default implementation of an `HttpRoutePlanner`. This implementation is based on `parameters`. It will not make use of any Java system properties, nor of system or browser proxy settings.

The following parameters can be used to customize the behavior of this class:

- `ConnRoutePNames.DEFAULT_PROXY`
- `ConnRoutePNames.LOCAL_ADDRESS`
- `ConnRoutePNames.FORCED_ROUTE`

Since:
  4.0

Field Summary
`protected SchemeRegistry` `schemeRegistry` The scheme registry.

Constructor Summary
`DefaultHttpRoutePlanner(SchemeRegistry schreg)` Creates a new default route planner.

Method Summary
`HttpRoute` `determineRoute(HttpHost target, HttpRequest request, HttpContext context)` Determines the route for a request.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### schemeRegistry

    protected final SchemeRegistry schemeRegistry

  The scheme registry.

Constructor Detail

### DefaultHttpRoutePlanner

    public DefaultHttpRoutePlanner(SchemeRegistry schreg)

  Creates a new default route planner.

  Parameters:
    `schreg` - the scheme registry

Method Detail

### determineRoute

    public HttpRoute determineRoute(HttpHost target,
                                    HttpRequest request,
                                    HttpContext context)
                             throws HttpException

  Description copied from interface: `HttpRoutePlanner`
  Determines the route for a request.

  Specified by:
    `determineRoute` in interface `HttpRoutePlanner`
  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:
    `HttpException` - in case of a problem

Copyright © 1999-2013 The Apache Software Foundation. All Rights Reserved.