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 I2NPMessagelastRead()clear the last message read from a byte array with an offsetI2NPMessagereadMessage(byte[] data)Read an I2NPMessage from the byte array and return the fully populated object.intreadMessage(byte[] data, int offset)Result is retreived with lastRead()intreadMessage(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 I2NPMessageExceptionResult is retreived with lastRead()- Throws:
I2NPMessageException
-
readMessage
public int readMessage(byte[] data, int offset, int maxLen) throws I2NPMessageExceptionSet 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
-
-