java.lang.Object
net.i2p.data.i2cp.I2CPMessageImpl
net.i2p.data.i2cp.ReceiveMessageEndMessage
All Implemented Interfaces:
I2CPMessage

public class ReceiveMessageEndMessageextends I2CPMessageImpl
Defines the message a client sends to a router when asking the router to start sending a message to it.
  • Field Details

    • MESSAGE_TYPE

      public static final int MESSAGE_TYPE
      Message type.
      See Also:
    • _sessionId

      private int _sessionId
      The session whose message transfer has just ended.
    • _messageId

      private long _messageId
      _message id.
  • Constructor Details

    • ReceiveMessageEndMessage

      public ReceiveMessageEndMessage()
      New instance with unset session and message IDs.
  • Method Details

    • getSessionId

      public long getSessionId()
      Session identifier.
      Returns:
      the session id
    • sessionId

      public SessionId sessionId()
      Return the SessionId for this message.
      Specified by:
      sessionId in interface I2CPMessage
      Overrides:
      sessionId in class I2CPMessageImpl
      Returns:
      null always. Extending classes with a SessionId must override.
    • setSessionId

      public void setSessionId(long id)
      Session ID for this message.
      Parameters:
      id - 0-65535
    • getMessageId

      public long getMessageId()
      Message identifier.
      Returns:
      the message id
    • setMessageId

      public void setMessageId(long id)
      New message identifier.
      Parameters:
      id - identifier tying this end message to its Begin message
    • doReadMessage

      protected void doReadMessage(InputStream in, int size) throws I2CPMessageException, IOException
      Description copied from class: I2CPMessageImpl
      Read in the payload part of the message (after the initial 4 byte size and 1 byte type).
      Specified by:
      doReadMessage in class I2CPMessageImpl
      Parameters:
      in - positioned just past the 4 byte size and 1 byte type header
      size - how many payload bytes remain to be read
      Throws:
      I2CPMessageException - if the message format is invalid
      IOException - if there's an error reading from the stream
    • doWriteMessage

      protected byte[] doWriteMessage() throws I2CPMessageException, IOException
      Description copied from class: I2CPMessageImpl
      Write out the payload part of the message (not including the 4 byte size and 1 byte type).
      Specified by:
      doWriteMessage in class I2CPMessageImpl
      Returns:
      byte array
      Throws:
      I2CPMessageException - if the message cannot be written
      IOException - if there's an error writing to the stream
    • getType

      public int getType()
      Description copied from interface: I2CPMessage
      Return the unique identifier for this type of message, as specified in the network specification document under #ClientAccessLayerMessages.
      Returns:
      unique identifier for this type of message
    • toString

      public String toString()
      Overrides:
      toString in class Object