|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.i2p.router.transport.udp.InboundMessageFragments
Organize the received data message fragments, allowing its
MessageReceiver
to pull off completed messages and its
ACKSender
to pull off peers who need to receive an ACK for
these messages. In addition, it drops failed fragments and keeps a
minimal list of the most recently completed messages (even though higher
up in the router we have full blown replay detection, its nice to have a
basic line of defense here)
Constructor Summary | |
InboundMessageFragments(RouterContext ctx,
OutboundMessageFragments outbound,
UDPTransport transport)
|
Method Summary | |
PeerState |
getNextPeerToACK()
Pull off the peer who we next want to send ACKs/NACKs to. |
boolean |
isAlive()
|
void |
receiveData(PeerState from,
UDPPacketReader.DataReader data)
Pull the fragments and ACKs out of the authenticated data packet |
InboundMessageState |
receiveNextMessage()
Blocking call to pull off the next fully received message |
void |
shutdown()
|
void |
startup()
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public InboundMessageFragments(RouterContext ctx, OutboundMessageFragments outbound, UDPTransport transport)
Method Detail |
public void startup()
public void shutdown()
public boolean isAlive()
public void receiveData(PeerState from, UDPPacketReader.DataReader data)
public InboundMessageState receiveNextMessage()
public PeerState getNextPeerToACK()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |