Class List0TypeDecoder
- java.lang.Object
-
- org.apache.qpid.protonj2.codec.decoders.AbstractPrimitiveTypeDecoder<List>
-
- org.apache.qpid.protonj2.codec.decoders.primitives.List0TypeDecoder
-
- All Implemented Interfaces:
ListTypeDecoder
,PrimitiveTypeDecoder<List>
,StreamTypeDecoder<List>
,TypeDecoder<List>
public final class List0TypeDecoder extends AbstractPrimitiveTypeDecoder<List> implements ListTypeDecoder
Decoder of Zero sized AMQP List values from a byte stream.
-
-
Constructor Summary
Constructors Constructor Description List0TypeDecoder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getTypeCode()
int
readCount(InputStream stream)
Reads the number of elements contained in the encoded list from the providedInputStream
.int
readCount(ProtonBuffer buffer)
Reads the number of elements contained in the encoded list from the providedProtonBuffer
.int
readSize(InputStream stream)
Reads the size in bytes of the encoded list from the providedInputStream
.int
readSize(ProtonBuffer buffer)
Reads the size in bytes of the encoded list from the providedProtonBuffer
.List<Object>
readValue(InputStream stream, StreamDecoderState state)
Reads the next type from the given buffer and returns it.List<Object>
readValue(ProtonBuffer buffer, DecoderState state)
Reads the next type from the given buffer and returns it.void
skipValue(InputStream stream, StreamDecoderState state)
Skips over the bytes that compose the type this descriptor decodes.void
skipValue(ProtonBuffer buffer, DecoderState state)
Skips over the bytes that compose the type this descriptor decodes.-
Methods inherited from class org.apache.qpid.protonj2.codec.decoders.AbstractPrimitiveTypeDecoder
isArrayType, isJavaPrimitive, readArrayElements, readArrayElements
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.qpid.protonj2.codec.decoders.primitives.ListTypeDecoder
getTypeClass
-
Methods inherited from interface org.apache.qpid.protonj2.codec.decoders.PrimitiveTypeDecoder
isJavaPrimitive
-
Methods inherited from interface org.apache.qpid.protonj2.codec.StreamTypeDecoder
getTypeClass, isArrayType, readArrayElements
-
Methods inherited from interface org.apache.qpid.protonj2.codec.TypeDecoder
isArrayType, readArrayElements
-
-
-
-
Method Detail
-
getTypeCode
public int getTypeCode()
- Specified by:
getTypeCode
in interfacePrimitiveTypeDecoder<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 interfaceTypeDecoder<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.
-
readValue
public List<Object> readValue(InputStream stream, StreamDecoderState state) throws DecodeException
Description copied from interface:StreamTypeDecoder
Reads the next type from the given buffer and returns it.- Specified by:
readValue
in interfaceStreamTypeDecoder<List>
- Parameters:
stream
- 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 interfaceTypeDecoder<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 interfaceStreamTypeDecoder<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 providedProtonBuffer
. The implementation must read the correct size encoding based on the type ofList
that thisTypeDecoder
handles.- Specified by:
readSize
in interfaceListTypeDecoder
- 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 providedProtonBuffer
. The implementation must read the correct size encoding based on the type ofList
that thisTypeDecoder
handles.- Specified by:
readCount
in interfaceListTypeDecoder
- 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 providedInputStream
. The implementation must read the correct size encoding based on the type ofList
that thisTypeDecoder
handles.- Specified by:
readSize
in interfaceListTypeDecoder
- 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 providedInputStream
. The implementation must read the correct size encoding based on the type ofList
that thisTypeDecoder
handles.- Specified by:
readCount
in interfaceListTypeDecoder
- 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.
-
-