Class ProxySelectorRoutePlanner

java.lang.Object
org.apache.http.impl.conn.ProxySelectorRoutePlanner
All Implemented Interfaces:
HttpRoutePlanner

@Deprecated public class ProxySelectorRoutePlanner extends Object implements HttpRoutePlanner
Deprecated.
Default implementation of an HttpRoutePlanner. This implementation is based on ProxySelector. By default, it will pick up the proxy settings of the JVM, either from system properties or from the browser running the application. Additionally, it interprets some parameters, though not the DEFAULT_PROXY.

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

Since:
4.0
  • Field Details

    • schemeRegistry

      protected final SchemeRegistry schemeRegistry
      Deprecated.
      The scheme registry.
    • proxySelector

      protected ProxySelector proxySelector
      Deprecated.
      The proxy selector to use, or null for system default.
  • Constructor Details

    • ProxySelectorRoutePlanner

      public ProxySelectorRoutePlanner(SchemeRegistry schreg, ProxySelector prosel)
      Deprecated.
      Creates a new proxy selector route planner.
      Parameters:
      schreg - the scheme registry
      prosel - the proxy selector, or null for the system default
  • Method Details

    • getProxySelector

      public ProxySelector getProxySelector()
      Deprecated.
      Obtains the proxy selector to use.
      Returns:
      the proxy selector, or null for the system default
    • setProxySelector

      public void setProxySelector(ProxySelector prosel)
      Deprecated.
      Sets the proxy selector to use.
      Parameters:
      prosel - the proxy selector, or null to use the system default
    • determineRoute

      public HttpRoute determineRoute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.protocol.HttpContext context) throws org.apache.http.HttpException
      Deprecated.
      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:
      org.apache.http.HttpException - in case of a problem
    • determineProxy

      protected org.apache.http.HttpHost determineProxy(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.protocol.HttpContext context) throws org.apache.http.HttpException
      Deprecated.
      Determines a proxy for the given target.
      Parameters:
      target - the planned target, never null
      request - the request to be sent, never null
      context - the context, or null
      Returns:
      the proxy to use, or null for a direct route
      Throws:
      org.apache.http.HttpException - in case of system proxy settings that cannot be handled
    • getHost

      protected String getHost(InetSocketAddress isa)
      Deprecated.
      Obtains a host from an InetSocketAddress.
      Parameters:
      isa - the socket address
      Returns:
      a host string, either as a symbolic name or as a literal IP address string

      (TODO: determine format for IPv6 addresses, with or without [brackets])

    • chooseProxy

      protected Proxy chooseProxy(List<Proxy> proxies, org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.protocol.HttpContext context)
      Deprecated.
      Chooses a proxy from a list of available proxies. The default implementation just picks the first non-SOCKS proxy from the list. If there are only SOCKS proxies, Proxy.NO_PROXY is returned. Derived classes may implement more advanced strategies, such as proxy rotation if there are multiple options.
      Parameters:
      proxies - the list of proxies to choose from, never null or empty
      target - the planned target, never null
      request - the request to be sent, never null
      context - the context, or null
      Returns:
      a proxy type