net.i2p.router

## Interface TunnelInfo

- All Known Implementing Classes:
    PooledTunnelCreatorConfig, TunnelCreatorConfig

      public interface TunnelInfo

  Defines the information associated with a tunnel

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `Hash` | `getDestination()` if this is a client tunnel, what destination is it for?
    `long` | `getExpiration()`
    `int` | `getLength()` how many peers are there in the tunnel (including the creator)?
    `Hash` | `getPeer(int hop)` retrieve the peer at the given hop.
    `long` | `getProcessedMessagesCount()`
    `TunnelId` | `getReceiveTunnelId(int hop)` retrieve the tunnelId that the given hop receives messages on.
    `TunnelId` | `getSendTunnelId(int hop)` retrieve the tunnelId that the given hop sends messages on.
    `long` | `getVerifiedBytesTransferred()` we know for sure that this many bytes travelled through the tunnel in its lifetime
    `void` | `incrementVerifiedBytesTransferred(int numBytes)` we know for sure that the given number of bytes were sent down the tunnel fully
    `boolean` | `isInbound()` is this an inbound tunnel?
    `void` | `testSuccessful(int responseTime)` take note that the tunnel was able to measurably Do Good in the given time

- - ### Method Detail

    - #### getLength

          int getLength()

      how many peers are there in the tunnel (including the creator)?

    - #### getReceiveTunnelId

          TunnelId getReceiveTunnelId(int hop)

      retrieve the tunnelId that the given hop receives messages on. the gateway is hop 0.

    - #### getSendTunnelId

          TunnelId getSendTunnelId(int hop)

      retrieve the tunnelId that the given hop sends messages on. the gateway is hop 0.

    - #### getPeer

          Hash getPeer(int hop)

      retrieve the peer at the given hop. the gateway is hop 0

    - #### isInbound

          boolean isInbound()

      is this an inbound tunnel?

    - #### getDestination

          Hash getDestination()

      if this is a client tunnel, what destination is it for?

    - #### getExpiration

          long getExpiration()

    - #### testSuccessful

          void testSuccessful(int responseTime)

      take note that the tunnel was able to measurably Do Good in the given time

    - #### getProcessedMessagesCount

          long getProcessedMessagesCount()

    - #### getVerifiedBytesTransferred

          long getVerifiedBytesTransferred()

      we know for sure that this many bytes travelled through the tunnel in its lifetime

    - #### incrementVerifiedBytesTransferred

          void incrementVerifiedBytesTransferred(int numBytes)

      we know for sure that the given number of bytes were sent down the tunnel fully