org.apache.http.conn.routing
Interface RouteInfo

All Known Implementing Classes:
HttpRoute, RouteTracker

public interface RouteInfo

Read-only interface for route information.

Since:
4.0

Nested Class Summary
static class RouteInfo.LayerType
          The layering type of a route.
static class RouteInfo.TunnelType
          The tunnelling type of a route.
 
Method Summary
 int getHopCount()
          Obtains the number of hops in this route.
 org.apache.http.HttpHost getHopTarget(int hop)
          Obtains the target of a hop in this route.
 RouteInfo.LayerType getLayerType()
          Obtains the layering type of this route.
 InetAddress getLocalAddress()
          Obtains the local address to connect from.
 org.apache.http.HttpHost getProxyHost()
          Obtains the first proxy host.
 org.apache.http.HttpHost getTargetHost()
          Obtains the target host.
 RouteInfo.TunnelType getTunnelType()
          Obtains the tunnel type of this route.
 boolean isLayered()
          Checks whether this route includes a layered protocol.
 boolean isSecure()
          Checks whether this route is secure.
 boolean isTunnelled()
          Checks whether this route is tunnelled through a proxy.
 

Method Detail

getTargetHost

org.apache.http.HttpHost getTargetHost()
Obtains the target host.

Returns:
the target host

getLocalAddress

InetAddress getLocalAddress()
Obtains the local address to connect from.

Returns:
the local address, or null

getHopCount

int getHopCount()
Obtains the number of hops in this route. A direct route has one hop. A route through a proxy has two hops. A route through a chain of n proxies has n+1 hops.

Returns:
the number of hops in this route

getHopTarget

org.apache.http.HttpHost getHopTarget(int hop)
Obtains the target of a hop in this route. The target of the last hop is the target host, the target of previous hops is the respective proxy in the chain. For a route through exactly one proxy, target of hop 0 is the proxy and target of hop 1 is the target host.

Parameters:
hop - index of the hop for which to get the target, 0 for first
Returns:
the target of the given hop
Throws:
IllegalArgumentException - if the argument is negative or not less than getHopCount()

getProxyHost

org.apache.http.HttpHost getProxyHost()
Obtains the first proxy host.

Returns:
the first proxy in the proxy chain, or null if this route is direct

getTunnelType

RouteInfo.TunnelType getTunnelType()
Obtains the tunnel type of this route. If there is a proxy chain, only end-to-end tunnels are considered.

Returns:
the tunnelling type

isTunnelled

boolean isTunnelled()
Checks whether this route is tunnelled through a proxy. If there is a proxy chain, only end-to-end tunnels are considered.

Returns:
true if tunnelled end-to-end through at least one proxy, false otherwise

getLayerType

RouteInfo.LayerType getLayerType()
Obtains the layering type of this route. In the presence of proxies, only layering over an end-to-end tunnel is considered.

Returns:
the layering type

isLayered

boolean isLayered()
Checks whether this route includes a layered protocol. In the presence of proxies, only layering over an end-to-end tunnel is considered.

Returns:
true if layered, false otherwise

isSecure

boolean isSecure()
Checks whether this route is secure.

Returns:
true if secure, false otherwise


Copyright © 1999–2019 The Apache Software Foundation. All rights reserved.