Interface MessageCodec<T>

    • Method Detail

      • encodeMessage

        @Nullable
        ByteBuffer encodeMessage​(@Nullable
                                 T message)
        Encodes the specified message into binary.
        Parameters:
        message - the T message, possibly null.
        Returns:
        a ByteBuffer containing the encoding between position 0 and the current position, or null, if message is null.
      • decodeMessage

        @Nullable
        T decodeMessage​(@Nullable
                        ByteBuffer message)
        Decodes the specified message from binary.

        Warning: The ByteBuffer is "direct" and it won't be valid beyond this call. Storing the ByteBuffer and using it later and will lead to a java.nio.BufferUnderflowException. If you want to retain the data you'll need to copy it.

        Parameters:
        message - the ByteBuffer message, possibly null.
        Returns:
        a T value representation of the bytes between the given buffer's current position and its limit, or null, if message is null.