java.lang.Object
net.i2p.data.i2cp.I2CPMessageHandler

public class I2CPMessageHandlerextends Object
Handle messages from the server for the client or vice versa.
  • Field Details

    • MAX_LENGTH

      public static final int MAX_LENGTH
      This is huge. Mainly to catch a completely bogus response, possibly not an I2CP socket.
      See Also:
  • Constructor Details

    • I2CPMessageHandler

      public I2CPMessageHandler()
      Constructor. Messages are read and written by the static helpers below against a stream they are handed, so an instance carries no state.
  • Method Details

    • readMessage

      public static I2CPMessage readMessage(InputStream in) throws IOException, I2CPMessageException
      Read an I2CPMessage from the stream and return the fully populated object.
      Parameters:
      in - I2CP input stream
      Returns:
      Fully populated I2CPMessage
      Throws:
      IOException - if there is an IO problem reading from the stream
      I2CPMessageException - if there is a problem handling the particular message - if it is an unknown type or has improper formatting, etc.