public class I2PTunnelIRCClient extends I2PTunnelClientBase
TODO: Consider extending I2PTunnelClient to reduce code duplication.
| Modifier and Type | Field and Description |
|---|---|
static String |
PROP_AUTO_RECONNECT
Automatically reconnect on tunnel failure.
|
static String |
PROP_DCC |
protected long |
readTimeout |
_clientId, _context, _log, _ownDest, DEFAULT_CONNECT_TIMEOUT, dest, l, listenerReady, mySockets, PROP_USE_SSL, sockLock, sockMgr, ssopen, tunnel| Constructor and Description |
|---|
I2PTunnelIRCClient(int localPort,
String destinations,
Logging l,
boolean ownDest,
EventDispatcher notifyThis,
I2PTunnel tunnel,
String pkf)
As of 0.9.20 this is fast, and does NOT connect the manager to the router,
or open the local socket.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
clientConnectionRun(Socket s)
Manage a connection in a separate thread.
|
boolean |
close(boolean forced)
Note that the tunnel can be reopened after this by calling startRunning().
|
void |
optionsUpdated(I2PTunnel tunnel)
Update the dests then call super.
|
void |
startRunning()
Actually open the local socket and start working on incoming connections.
|
buildSocketManager, buildSocketManager, buildSocketManager, buildSocketManager, closeSocket, createI2PSocket, createI2PSocket, createI2PSocket, destroy, getDefaultOptions, getDefaultOptions, getListenHost, getLocalPort, getSocketManager, getSocketManager, getSocketManager, killSharedClient, manageConnection, run, verifySocketManagerconnected, disconnected, errorOccurred, getBooleanOption, getId, getTunnel, isOpen, reportAbuse, routerDisconnected, setId, setName, setTunnel, toStringattachEventDispatcher, detachEventDispatcher, getEventDispatcher, getEvents, getEventValue, ignoreEvents, notifyEvent, unIgnoreEvents, waitEventValuepublic static final String PROP_AUTO_RECONNECT
public static final String PROP_DCC
protected long readTimeout
public I2PTunnelIRCClient(int localPort,
String destinations,
Logging l,
boolean ownDest,
EventDispatcher notifyThis,
I2PTunnel tunnel,
String pkf)
throws IllegalArgumentException
destinations - peers we target, comma- or space-separated. Since 0.9.9, each dest may be appended with :portIllegalArgumentException - if the I2PTunnel does not contain
valid config to contact the routerprotected void clientConnectionRun(Socket s)
I2PTunnelClientBaseclientConnectionRun in class I2PTunnelClientBasepublic boolean close(boolean forced)
I2PTunnelClientBaseclose in class I2PTunnelClientBasepublic void optionsUpdated(I2PTunnel tunnel)
optionsUpdated in class I2PTunnelClientBasepublic void startRunning()
I2PTunnelClientBasestartRunning in class I2PTunnelClientBase