RouteInfo.LayerType, RouteInfo.TunnelType
Modifier and Type | Field and Description |
---|---|
private boolean |
connected
Whether the first hop of the route is established.
|
private RouteInfo.LayerType |
layered
Whether the route is layered over a tunnel.
|
private InetAddress |
localAddress
The local address to connect from.
|
private HttpHost[] |
proxyChain
The proxy chain, if any.
|
private boolean |
secure
Whether the route is secure.
|
private HttpHost |
targetHost
The target host to connect to.
|
private RouteInfo.TunnelType |
tunnelled
Whether the the route is tunnelled end-to-end through proxies.
|
Constructor and Description |
---|
RouteTracker(HttpHost target,
InetAddress local)
Creates a new route tracker.
|
RouteTracker(HttpRoute route)
Creates a new tracker for the given route.
|
Modifier and Type | Method and Description |
---|---|
Object |
clone() |
void |
connectProxy(HttpHost proxy,
boolean secure)
Tracks connecting to the first proxy.
|
void |
connectTarget(boolean secure)
Tracks connecting to the target.
|
boolean |
equals(Object o)
Compares this tracked route to another.
|
int |
getHopCount()
Obtains the number of hops in this route.
|
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.
|
HttpHost |
getProxyHost()
Obtains the first proxy host.
|
HttpHost |
getTargetHost()
Obtains the target host.
|
RouteInfo.TunnelType |
getTunnelType()
Obtains the tunnel type of this route.
|
int |
hashCode()
Generates a hash code for this tracked route.
|
boolean |
isConnected() |
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.
|
void |
layerProtocol(boolean secure)
Tracks layering a protocol.
|
void |
reset() |
HttpRoute |
toRoute()
Obtains the tracked route.
|
String |
toString()
Obtains a description of the tracked route.
|
void |
tunnelProxy(HttpHost proxy,
boolean secure)
Tracks tunnelling to a proxy in a proxy chain.
|
void |
tunnelTarget(boolean secure)
Tracks tunnelling to the target.
|
private final HttpHost targetHost
private final InetAddress localAddress
null
indicates that the default should be used.private boolean connected
private HttpHost[] proxyChain
private RouteInfo.TunnelType tunnelled
private RouteInfo.LayerType layered
private boolean secure
public RouteTracker(HttpHost target, InetAddress local)
target
- the host to which to routelocal
- the local address to route from, or
null
for the defaultpublic RouteTracker(HttpRoute route)
route
- the route to trackpublic void reset()
public final void connectTarget(boolean secure)
secure
- true
if the route is secure,
false
otherwisepublic final void connectProxy(HttpHost proxy, boolean secure)
proxy
- the proxy connected tosecure
- true
if the route is secure,
false
otherwisepublic final void tunnelTarget(boolean secure)
secure
- true
if the route is secure,
false
otherwisepublic final void tunnelProxy(HttpHost proxy, boolean secure)
proxy
- the proxy tunnelled tosecure
- true
if the route is secure,
false
otherwisepublic final void layerProtocol(boolean secure)
secure
- true
if the route is secure,
false
otherwisepublic final HttpHost getTargetHost()
RouteInfo
getTargetHost
in interface RouteInfo
public final InetAddress getLocalAddress()
RouteInfo
getLocalAddress
in interface RouteInfo
null
public final int getHopCount()
RouteInfo
getHopCount
in interface RouteInfo
public final HttpHost getHopTarget(int hop)
RouteInfo
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.getHopTarget
in interface RouteInfo
hop
- index of the hop for which to get the target,
0 for firstpublic final HttpHost getProxyHost()
RouteInfo
getProxyHost
in interface RouteInfo
null
if this route is directpublic final boolean isConnected()
public final RouteInfo.TunnelType getTunnelType()
RouteInfo
getTunnelType
in interface RouteInfo
public final boolean isTunnelled()
RouteInfo
isTunnelled
in interface RouteInfo
true
if tunnelled end-to-end through at least
one proxy,
false
otherwisepublic final RouteInfo.LayerType getLayerType()
RouteInfo
getLayerType
in interface RouteInfo
public final boolean isLayered()
RouteInfo
public final boolean isSecure()
RouteInfo
public final HttpRoute toRoute()
connected
.
If not connected, nothing has been tracked so far.null
if nothing has been tracked so farpublic final int hashCode()
toRoute
to obtain an
unmodifiable representation of the tracked route.public Object clone() throws CloneNotSupportedException
clone
in class Object
CloneNotSupportedException
WebARTS Library Licensed Under the GNU - General Public License. Other Libraries licensed under their respective Open Source Licenses