## net.i2p.i2ptunnel
Class I2PTunnelClient

    java.lang.Object
      net.i2p.i2ptunnel.I2PTunnelTask
          net.i2p.i2ptunnel.I2PTunnelClientBase
              net.i2p.i2ptunnel.I2PTunnelClient

All Implemented Interfaces:
  Runnable, EventDispatcher

    public class I2PTunnelClient

extends I2PTunnelClientBase

Field Summary
`protected List<Destination>` `dests` list of Destination objects that we point at
`protected long` `readTimeout`

Fields inherited from class net.i2p.i2ptunnel.I2PTunnelClientBase
`_clientId, _context, _executor, _log, _ownDest, DEFAULT_CONNECT_TIMEOUT, dest, l, mySockets, sockLock, sockMgr`

Fields inherited from class net.i2p.i2ptunnel.I2PTunnelTask
`open`

Constructor Summary
`I2PTunnelClient(int localPort, String destinations, Logging l, boolean ownDest, EventDispatcher notifyThis, I2PTunnel tunnel, String pkf)`

Method Summary
`protected void` `clientConnectionRun(Socket s)` Manage a connection in a separate thread.
`long` `getReadTimeout()`
`void` `setReadTimeout(long ms)`

Methods inherited from class net.i2p.i2ptunnel.I2PTunnelClientBase
`buildSocketManager, buildSocketManager, buildSocketManager, buildSocketManager, close, closeSocket, createI2PSocket, createI2PSocket, getDefaultOptions, getDefaultOptions, getListenHost, getLocalPort, getSocketManager, getSocketManager, getSocketManager, manageConnection, run, startRunning, verifySocketManager`

Methods inherited from class net.i2p.i2ptunnel.I2PTunnelTask
`attachEventDispatcher, detachEventDispatcher, disconnected, errorOccurred, getEventDispatcher, getEvents, getEventValue, getId, getTunnel, ignoreEvents, isOpen, notifyEvent, reportAbuse, routerDisconnected, setId, setName, setTunnel, toString, unIgnoreEvents, waitEventValue`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### dests

    protected List<Destination> dests

  list of Destination objects that we point at

### readTimeout

    protected long readTimeout

Constructor Detail

### I2PTunnelClient

    public I2PTunnelClient(int localPort,
                           String destinations,
                           Logging l,
                           boolean ownDest,
                           EventDispatcher notifyThis,
                           I2PTunnel tunnel,
                           String pkf)
                    throws IllegalArgumentException

Parameters:
  `destinations` - comma delimited list of peers we target
Throws:
  `IllegalArgumentException` - if the I2PTunnel does not contain valid config to contact the router

Method Detail

### setReadTimeout

    public void setReadTimeout(long ms)

### getReadTimeout

    public long getReadTimeout()

### clientConnectionRun

    protected void clientConnectionRun(Socket s)

  Description copied from class: `I2PTunnelClientBase`
  Manage a connection in a separate thread. This only works if you do not override manageConnection()

  Specified by:
    `clientConnectionRun` in class `I2PTunnelClientBase`