net.i2p.i2ptunnel
Class I2PTunnelIRCClient

java.lang.Object
  extended by net.i2p.i2ptunnel.I2PTunnelTask
      extended by net.i2p.i2ptunnel.I2PTunnelClientBase
          extended by net.i2p.i2ptunnel.I2PTunnelIRCClient
All Implemented Interfaces:
java.lang.Runnable, EventDispatcher

public class I2PTunnelIRCClient
extends I2PTunnelClientBase
implements java.lang.Runnable

Todo: Can we extend I2PTunnelClient instead and remove some duplicated code?


Nested Class Summary
static class I2PTunnelIRCClient.IrcInboundFilter
           
static class I2PTunnelIRCClient.IrcOutboundFilter
           
 
Field Summary
protected  java.util.List<Destination> dests
          list of Destination objects that we point at
protected  long readTimeout
           
 
Fields inherited from class net.i2p.i2ptunnel.I2PTunnelClientBase
_clientId, _context, _ownDest, _waitingSockets, 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
I2PTunnelIRCClient(int localPort, java.lang.String destinations, Logging l, boolean ownDest, EventDispatcher notifyThis, I2PTunnel tunnel, java.lang.String pkf)
           
 
Method Summary
protected  void clientConnectionRun(java.net.Socket s)
          Manage a connection in a separate thread.
static java.lang.String inboundFilter(java.lang.String s, java.lang.StringBuffer expectedPong)
           
static java.lang.String outboundFilter(java.lang.String s, java.lang.StringBuffer expectedPong)
           
 
Methods inherited from class net.i2p.i2ptunnel.I2PTunnelClientBase
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
 
Methods inherited from interface java.lang.Runnable
run
 

Field Detail

dests

protected java.util.List<Destination> dests
list of Destination objects that we point at


readTimeout

protected long readTimeout
Constructor Detail

I2PTunnelIRCClient

public I2PTunnelIRCClient(int localPort,
                          java.lang.String destinations,
                          Logging l,
                          boolean ownDest,
                          EventDispatcher notifyThis,
                          I2PTunnel tunnel,
                          java.lang.String pkf)
                   throws java.lang.IllegalArgumentException
Throws:
java.lang.IllegalArgumentException - if the I2PTunnel does not contain valid config to contact the router
Method Detail

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

inboundFilter

public static java.lang.String inboundFilter(java.lang.String s,
                                             java.lang.StringBuffer expectedPong)

outboundFilter

public static java.lang.String outboundFilter(java.lang.String s,
                                              java.lang.StringBuffer expectedPong)