|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.i2p.router.transport.udp.UDPEndpoint
class UDPEndpoint
Coordinate the low-level datagram socket, creating and managing the UDPSender and UDPReceiver.
Field Summary | |
---|---|
static String |
PROP_MAX_PORT
|
static String |
PROP_MIN_PORT
8998 is monotone, and 31000 is the wrapper outbound, so let's stay between those |
Constructor Summary | |
---|---|
UDPEndpoint(RouterContext ctx,
UDPTransport transport,
int listenPort,
InetAddress bindAddress)
|
Method Summary | |
---|---|
void |
clearOutbound()
Clear outbound queue, probably in preparation for sending destroy() to everybody. |
void |
fail()
|
int |
getListenPort()
call after startup() to get actual port or -1 on startup failure |
UDPSender |
getSender()
|
boolean |
isIPv4()
|
boolean |
isIPv6()
|
UDPPacket |
receive()
Blocking call to receive the next inbound UDP packet from any peer. |
static int |
selectRandomPort(RouterContext ctx)
Pick a random port between the configured boundaries |
void |
send(UDPPacket packet)
Add the packet to the outobund queue to be sent ASAP (as allowed by the bandwidth limiter) BLOCKING if queue is full. |
void |
setListenPort(int newPort)
|
void |
shutdown()
|
void |
startup()
Caller should call getListenPort() after this to get the actual bound port and determine success . |
String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final String PROP_MIN_PORT
public static final String PROP_MAX_PORT
Constructor Detail |
---|
public UDPEndpoint(RouterContext ctx, UDPTransport transport, int listenPort, InetAddress bindAddress)
transport
- may be null for unit testing ONLYlistenPort
- -1 or the requested port, may not be honoredbindAddress
- null okMethod Detail |
---|
public void startup() throws SocketException
SocketException
public void shutdown()
public void setListenPort(int newPort)
public static int selectRandomPort(RouterContext ctx)
public int getListenPort()
public UDPSender getSender()
public void send(UDPPacket packet)
public UDPPacket receive()
public void clearOutbound()
public boolean isIPv4()
public boolean isIPv6()
public void fail()
fail
in interface SocketListener
public String toString()
toString
in class Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |