Package net.i2p.client.streaming.impl
Class MessageHandler
- java.lang.Object
-
- net.i2p.client.streaming.impl.MessageHandler
-
- All Implemented Interfaces:
I2PSessionListener
,I2PSessionMuxedListener
class MessageHandler extends Object implements I2PSessionMuxedListener
Receive raw information from the I2PSession and turn it into Packets, if we can.I2PSession -> MessageHandler -> PacketHandler -> ConnectionPacketHandler -> MessageInputStream
-
-
Constructor Summary
Constructors Constructor Description MessageHandler(I2PAppContext ctx, ConnectionManager mgr)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addDisconnectListener(I2PSocketManager.DisconnectListener lsnr)
void
disconnected(I2PSession session)
Notify the client that the session has been terminatedvoid
errorOccurred(I2PSession session, String message, Throwable error)
Notify the client that some error occurredvoid
messageAvailable(I2PSession session, int msgId, long size)
Instruct the client that the given session has received a message with size # of bytes.void
messageAvailable(I2PSession session, int msgId, long size, int proto, int fromPort, int toPort)
Instruct the client that the given session has received a message with size # of bytes.void
removeDisconnectListener(I2PSocketManager.DisconnectListener lsnr)
void
reportAbuse(I2PSession session, int severity)
Instruct the client that the session specified seems to be under attack and that the client may wish to move its destination to another router.
-
-
-
Constructor Detail
-
MessageHandler
public MessageHandler(I2PAppContext ctx, ConnectionManager mgr)
-
-
Method Detail
-
messageAvailable
public void messageAvailable(I2PSession session, int msgId, long size)
Instruct the client that the given session has received a message with size # of bytes. This shouldn't be called anymore since we are registering as a muxed listener.- Specified by:
messageAvailable
in interfaceI2PSessionListener
- Specified by:
messageAvailable
in interfaceI2PSessionMuxedListener
- Parameters:
session
- session to notifymsgId
- message number availablesize
- size of the message
-
messageAvailable
public void messageAvailable(I2PSession session, int msgId, long size, int proto, int fromPort, int toPort)
Instruct the client that the given session has received a message with size # of bytes.- Specified by:
messageAvailable
in interfaceI2PSessionMuxedListener
- Parameters:
session
- session to notifymsgId
- message number availablesize
- size of the messageproto
- 1-254 or 0 for unspecifiedfromPort
- 1-65535 or 0 for unspecifiedtoPort
- 1-65535 or 0 for unspecified
-
reportAbuse
public void reportAbuse(I2PSession session, int severity)
Instruct the client that the session specified seems to be under attack and that the client may wish to move its destination to another router.- Specified by:
reportAbuse
in interfaceI2PSessionListener
- Specified by:
reportAbuse
in interfaceI2PSessionMuxedListener
- Parameters:
session
- session to report abuse toseverity
- how bad the abuse is
-
disconnected
public void disconnected(I2PSession session)
Notify the client that the session has been terminated- Specified by:
disconnected
in interfaceI2PSessionListener
- Specified by:
disconnected
in interfaceI2PSessionMuxedListener
- Parameters:
session
- that has been terminated
-
errorOccurred
public void errorOccurred(I2PSession session, String message, Throwable error)
Notify the client that some error occurred- Specified by:
errorOccurred
in interfaceI2PSessionListener
- Specified by:
errorOccurred
in interfaceI2PSessionMuxedListener
- Parameters:
session
- of the clientmessage
- to send to the client about the errorerror
- the actual error
-
addDisconnectListener
public void addDisconnectListener(I2PSocketManager.DisconnectListener lsnr)
-
removeDisconnectListener
public void removeDisconnectListener(I2PSocketManager.DisconnectListener lsnr)
-
-