Interface TypeEncoder<V>

    • Method Detail

      • getTypeClass

        java.lang.Class<V> getTypeClass()
        Returns:
        the Class type that this encoder handles.
      • isArrayType

        boolean isArrayType()
        Returns:
        true if the type handled by this encoded is an AMQP Array type.
      • writeType

        void writeType​(ProtonBuffer buffer,
                       EncoderState state,
                       V value)
                throws EncodeException
        Write the full AMQP type data to the given byte buffer.

        This can consist of writing both a type constructor value and the bytes that make up the value of the type being written.

        Parameters:
        buffer - The buffer to write the AMQP type to
        state - The current encoder state
        value - The value that is to be written.
        Throws:
        EncodeException - if an error occurs while encoding the given value.
      • writeArray

        void writeArray​(ProtonBuffer buffer,
                        EncoderState state,
                        java.lang.Object[] values)
                 throws EncodeException
        Write an array elements of the AMQP type to the given byte buffer.

        This method writes the full Array type definition of an array of the type this encoder manages.

        Parameters:
        buffer - The buffer to write the AMQP array elements to
        state - The current encoder state
        values - The array of values that is to be written.
        Throws:
        EncodeException - if an error occurs while encoding the given value.
      • writeRawArray

        void writeRawArray​(ProtonBuffer buffer,
                           EncoderState state,
                           java.lang.Object[] values)
                    throws EncodeException
        Write an array elements of the AMQP type to the given byte buffer.

        This method writes only the body portion of an AMQP array of this type, the array encoding, size and element count should be assumed to be managed by the caller.

        Parameters:
        buffer - The buffer to write the AMQP array elements to
        state - The current encoder state
        values - The array of values that is to be written.
        Throws:
        EncodeException - if an error occurs while encoding the given value.