Package net.i2p.data.i2np
Class I2NPMessageHandler
- java.lang.Object
-
- net.i2p.data.i2np.I2NPMessageHandler
-
public class I2NPMessageHandler extends Object
Handle messages from router to router. This class is NOT threadsafe
-
-
Constructor Summary
Constructors Constructor Description I2NPMessageHandler(I2PAppContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description I2NPMessage
lastRead()
clear the last message read from a byte array with an offsetI2NPMessage
readMessage(byte[] data)
Read an I2NPMessage from the byte array and return the fully populated object.int
readMessage(byte[] data, int offset)
Result is retreived with lastRead()int
readMessage(byte[] data, int offset, int maxLen)
Set a limit on the max to read from the data buffer, so that we can use a large buffer but prevent the reader from reading off the end.
-
-
-
Constructor Detail
-
I2NPMessageHandler
public I2NPMessageHandler(I2PAppContext context)
-
-
Method Detail
-
lastRead
public I2NPMessage lastRead()
clear the last message read from a byte array with an offset
-
readMessage
public I2NPMessage readMessage(byte[] data) throws I2NPMessageException
Read an I2NPMessage from the byte array and return the fully populated object.- Throws:
I2NPMessageException
- if there is a problem handling the particular message - if it is an unknown type or has improper formatting, etc.
-
readMessage
public int readMessage(byte[] data, int offset) throws I2NPMessageException
Result is retreived with lastRead()- Throws:
I2NPMessageException
-
readMessage
public int readMessage(byte[] data, int offset, int maxLen) throws I2NPMessageException
Set a limit on the max to read from the data buffer, so that we can use a large buffer but prevent the reader from reading off the end. Result is retreived with lastRead()- Parameters:
maxLen
- read no more than this many bytes from data starting at offset, even if it is longer must be at least 16- Throws:
I2NPMessageException
- Since:
- 0.8.12
-
-