Class I2NPMessageHandler


  • public class I2NPMessageHandler
    extends Object
    Handle messages from router to router. This class is NOT threadsafe
    • 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,
                               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