Class List0TypeDecoder

    • Constructor Detail

      • List0TypeDecoder

        public List0TypeDecoder()
    • Method Detail

      • getTypeCode

        public int getTypeCode()
        Specified by:
        getTypeCode in interface PrimitiveTypeDecoder<List>
        Returns:
        the AMQP Encoding Code that this primitive type decoder can read.
      • readValue

        public List<Object> readValue​(ProtonBuffer buffer,
                                      DecoderState state)
                               throws DecodeException
        Description copied from interface: TypeDecoder
        Reads the next type from the given buffer and returns it.
        Specified by:
        readValue in interface TypeDecoder<List>
        Parameters:
        buffer - the source of encoded data.
        state - the current state of the decoder.
        Returns:
        the next instance in the stream that this decoder handles.
        Throws:
        DecodeException - if an error is encountered while reading the next value.
      • skipValue

        public void skipValue​(ProtonBuffer buffer,
                              DecoderState state)
                       throws DecodeException
        Description copied from interface: TypeDecoder
        Skips over the bytes that compose the type this descriptor decodes.

        Skipping values can be used when the type is not used or processed by the application doing the decoding. An example might be an AMQP message decoder that only needs to decode certain parts of the message and not others.

        Specified by:
        skipValue in interface TypeDecoder<List>
        Parameters:
        buffer - The buffer that contains the encoded type.
        state - The decoder state.
        Throws:
        DecodeException - if an error occurs while skipping the value.
      • skipValue

        public void skipValue​(InputStream stream,
                              StreamDecoderState state)
                       throws DecodeException
        Description copied from interface: StreamTypeDecoder
        Skips over the bytes that compose the type this descriptor decodes.

        Skipping values can be used when the type is not used or processed by the application doing the decoding. An example might be an AMQP message decoder that only needs to decode certain parts of the message and not others.

        Specified by:
        skipValue in interface StreamTypeDecoder<List>
        Parameters:
        stream - The stream that contains the encoded type.
        state - The decoder state.
        Throws:
        DecodeException - if an error occurs while skipping the value.
      • readSize

        public int readSize​(ProtonBuffer buffer)
                     throws DecodeException
        Description copied from interface: ListTypeDecoder
        Reads the size in bytes of the encoded list from the provided ProtonBuffer. The implementation must read the correct size encoding based on the type of List that this TypeDecoder handles.
        Specified by:
        readSize in interface ListTypeDecoder
        Parameters:
        buffer - The buffer where the size value should be read from.
        Returns:
        an integer containing the size in bytes of the encoded List.
        Throws:
        DecodeException - if an error occurs while reading the encoded size.
      • readCount

        public int readCount​(ProtonBuffer buffer)
                      throws DecodeException
        Description copied from interface: ListTypeDecoder
        Reads the number of elements contained in the encoded list from the provided ProtonBuffer. The implementation must read the correct size encoding based on the type of List that this TypeDecoder handles.
        Specified by:
        readCount in interface ListTypeDecoder
        Parameters:
        buffer - The buffer where the size value should be read from.
        Returns:
        an integer containing the number of elements in the encoded List.
        Throws:
        DecodeException - if an error occurs while reading the encoded element count.
      • readSize

        public int readSize​(InputStream stream)
                     throws DecodeException
        Description copied from interface: ListTypeDecoder
        Reads the size in bytes of the encoded list from the provided InputStream. The implementation must read the correct size encoding based on the type of List that this TypeDecoder handles.
        Specified by:
        readSize in interface ListTypeDecoder
        Parameters:
        stream - The stream where the size value should be read from.
        Returns:
        an integer containing the size in bytes of the encoded List.
        Throws:
        DecodeException - if an error occurs while reading the encoded size.
      • readCount

        public int readCount​(InputStream stream)
                      throws DecodeException
        Description copied from interface: ListTypeDecoder
        Reads the number of elements contained in the encoded list from the provided InputStream. The implementation must read the correct size encoding based on the type of List that this TypeDecoder handles.
        Specified by:
        readCount in interface ListTypeDecoder
        Parameters:
        stream - The stream where the size value should be read from.
        Returns:
        an integer containing the number of elements in the encoded List.
        Throws:
        DecodeException - if an error occurs while reading the encoded element count.