## net.i2p.i2ptunnel
Class I2PTunnelClient

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

All Implemented Interfaces:
  java.lang.Runnable, EventDispatcher

    public class I2PTunnelClient

extends I2PTunnelClientBase

Field Summary
`protected java.util.List` `dests` list of Destination objects that we point at
`protected long` `readTimeout`

Fields inherited from class net.i2p.i2ptunnel.I2PTunnelClientBase
`_clientId, _context, DEFAULT_CONNECT_TIMEOUT, dest, l, mySockets, PROP_MAX_WAIT_TIME, PROP_NUM_CONNECTION_BUILDERS, sockLock, sockMgr`

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

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

Method Summary
`protected void` `clientConnectionRun(java.net.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, close, closeSocket, createI2PSocket, createI2PSocket, getDefaultOptions, getDefaultOptions, getListenHost, getLocalPort, getSocketManager, getSocketManager, manageConnection, run, startRunning`

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 java.util.List dests

  list of Destination objects that we point at

### readTimeout

    protected long readTimeout

Constructor Detail

### I2PTunnelClient

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

Parameters:
  `destinations` - comma delimited list of peers we target
Throws:
  `java.lang.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(java.net.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`