net.i2p.router
Interface TunnelManagerFacade

All Superinterfaces:
Service
All Known Implementing Classes:
DummyTunnelManagerFacade, TunnelPoolManager

public interface TunnelManagerFacade
extends Service

Build and maintain tunnels throughout the network.


Method Summary
 void buildTunnels(Destination client, ClientTunnelSettings settings)
          the client connected (or updated their settings), so make sure we have the tunnels for them, and whenever necessary, ask them to authorize leases.
 int getFreeTunnelCount()
          how many free inbound tunnels do we have available?
 int getInboundClientTunnelCount()
          how many free inbound client tunnels do we have available?
 TunnelPoolSettings getInboundSettings()
           
 TunnelPoolSettings getInboundSettings(Hash client)
           
 long getLastParticipatingExpiration()
          When does the last tunnel we are participating in expire?
 int getOutboundClientTunnelCount()
          how many outbound client tunnels do we have available?
 TunnelPoolSettings getOutboundSettings()
           
 TunnelPoolSettings getOutboundSettings(Hash client)
           
 int getOutboundTunnelCount()
          how many outbound tunnels do we have available?
 int getParticipatingCount()
          how many tunnels are we participating in?
 TunnelInfo getTunnelInfo(TunnelId id)
          Retrieve the information related to a particular tunnel
 boolean isInUse(Hash peer)
          True if the peer currently part of a tunnel
 TunnelInfo selectInboundTunnel()
          pick an inbound tunnel not bound to a particular destination
 TunnelInfo selectInboundTunnel(Hash destination)
          pick an inbound tunnel bound to the given destination
 TunnelInfo selectOutboundTunnel()
          pick an outbound tunnel not bound to a particular destination
 TunnelInfo selectOutboundTunnel(Hash destination)
          pick an outbound tunnel bound to the given destination
 void setInboundSettings(Hash client, TunnelPoolSettings settings)
           
 void setInboundSettings(TunnelPoolSettings settings)
           
 void setOutboundSettings(Hash client, TunnelPoolSettings settings)
           
 void setOutboundSettings(TunnelPoolSettings settings)
           
 
Methods inherited from interface net.i2p.router.Service
renderStatusHTML, restart, shutdown, startup
 

Method Detail

getTunnelInfo

public TunnelInfo getTunnelInfo(TunnelId id)
Retrieve the information related to a particular tunnel

Parameters:
id - the tunnelId as seen at the gateway

selectInboundTunnel

public TunnelInfo selectInboundTunnel()
pick an inbound tunnel not bound to a particular destination


selectInboundTunnel

public TunnelInfo selectInboundTunnel(Hash destination)
pick an inbound tunnel bound to the given destination


selectOutboundTunnel

public TunnelInfo selectOutboundTunnel()
pick an outbound tunnel not bound to a particular destination


selectOutboundTunnel

public TunnelInfo selectOutboundTunnel(Hash destination)
pick an outbound tunnel bound to the given destination


isInUse

public boolean isInUse(Hash peer)
True if the peer currently part of a tunnel


getParticipatingCount

public int getParticipatingCount()
how many tunnels are we participating in?


getFreeTunnelCount

public int getFreeTunnelCount()
how many free inbound tunnels do we have available?


getOutboundTunnelCount

public int getOutboundTunnelCount()
how many outbound tunnels do we have available?


getInboundClientTunnelCount

public int getInboundClientTunnelCount()
how many free inbound client tunnels do we have available?


getOutboundClientTunnelCount

public int getOutboundClientTunnelCount()
how many outbound client tunnels do we have available?


getLastParticipatingExpiration

public long getLastParticipatingExpiration()
When does the last tunnel we are participating in expire?


buildTunnels

public void buildTunnels(Destination client,
                         ClientTunnelSettings settings)
the client connected (or updated their settings), so make sure we have the tunnels for them, and whenever necessary, ask them to authorize leases.


getInboundSettings

public TunnelPoolSettings getInboundSettings()

getOutboundSettings

public TunnelPoolSettings getOutboundSettings()

getInboundSettings

public TunnelPoolSettings getInboundSettings(Hash client)

getOutboundSettings

public TunnelPoolSettings getOutboundSettings(Hash client)

setInboundSettings

public void setInboundSettings(TunnelPoolSettings settings)

setOutboundSettings

public void setOutboundSettings(TunnelPoolSettings settings)

setInboundSettings

public void setInboundSettings(Hash client,
                               TunnelPoolSettings settings)

setOutboundSettings

public void setOutboundSettings(Hash client,
                                TunnelPoolSettings settings)