|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.i2p.i2ptunnel.I2PTunnelTask
net.i2p.i2ptunnel.I2PTunnelClientBase
net.i2p.i2ptunnel.I2PTunnelHTTPClient
public class I2PTunnelHTTPClient
Act as a mini HTTP proxy, handling various different types of requests, forwarding them through I2P appropriately, and displaying the reply. Supported request formats are:
$method http://$site[$port]/$path $protocolVersion or $method $path $protocolVersion\nHost: $site or $method http://i2p/$b64key/$path $protocolVersion or $method /$site/$path $protocolVersionIf the $site resolves with the I2P naming service, then it is directed towards that eepsite, otherwise it is directed towards this client's outproxy (typically "squid.i2p"). Only HTTP is supported (no HTTPS, ftp, mailto, etc). Both GET and POST have been tested, though other $methods should work.
Field Summary | |
---|---|
static java.lang.String |
PROP_JUMP_SERVERS
|
static java.lang.String |
PROP_REFERER
|
static java.lang.String |
PROP_USER_AGENT
|
static java.lang.String |
PROP_VIA
|
protected java.util.List |
proxyList
|
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 | |
---|---|
I2PTunnelHTTPClient(int localPort,
Logging l,
boolean ownDest,
java.lang.String wwwProxy,
EventDispatcher notifyThis,
I2PTunnel tunnel)
|
|
I2PTunnelHTTPClient(int localPort,
Logging l,
I2PSocketManager sockMgr,
I2PTunnel tunnel,
EventDispatcher notifyThis,
long clientId)
|
Method Summary | |
---|---|
static java.lang.String |
_(java.lang.String key)
lang in routerconsole.lang property, else current locale |
static java.lang.String |
_(java.lang.String key,
java.lang.Object o,
java.lang.Object o2)
{0} and {1} |
protected void |
clientConnectionRun(java.net.Socket s)
Manage a connection in a separate thread. |
boolean |
close(boolean forced)
Overridden to close internal socket too. |
protected I2PSocketOptions |
getDefaultOptions()
create the default options (using the default timeout, etc) unused? |
protected I2PSocketOptions |
getDefaultOptions(java.util.Properties overrides)
create the default options (using the default timeout, etc) |
void |
startRunning()
Actually start working on incoming connections. |
Methods inherited from class net.i2p.i2ptunnel.I2PTunnelClientBase |
---|
buildSocketManager, buildSocketManager, buildSocketManager, closeSocket, createI2PSocket, createI2PSocket, getListenHost, getLocalPort, getSocketManager, getSocketManager, getSocketManager, manageConnection, run, 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 |
---|
protected final java.util.List proxyList
public static final java.lang.String PROP_REFERER
public static final java.lang.String PROP_USER_AGENT
public static final java.lang.String PROP_VIA
public static final java.lang.String PROP_JUMP_SERVERS
Constructor Detail |
---|
public I2PTunnelHTTPClient(int localPort, Logging l, I2PSocketManager sockMgr, I2PTunnel tunnel, EventDispatcher notifyThis, long clientId)
public I2PTunnelHTTPClient(int localPort, Logging l, boolean ownDest, java.lang.String wwwProxy, EventDispatcher notifyThis, I2PTunnel tunnel) throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentException
- if the I2PTunnel does not contain
valid config to contact the routerMethod Detail |
---|
protected I2PSocketOptions getDefaultOptions()
getDefaultOptions
in class I2PTunnelClientBase
protected I2PSocketOptions getDefaultOptions(java.util.Properties overrides)
getDefaultOptions
in class I2PTunnelClientBase
public void startRunning()
startRunning
in class I2PTunnelClientBase
public boolean close(boolean forced)
close
in class I2PTunnelClientBase
protected void clientConnectionRun(java.net.Socket s)
I2PTunnelClientBase
clientConnectionRun
in class I2PTunnelClientBase
public static java.lang.String _(java.lang.String key)
public static java.lang.String _(java.lang.String key, java.lang.Object o, java.lang.Object o2)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |