Class Map32TypeDecoder
java.lang.Object
org.apache.qpid.protonj2.codec.decoders.AbstractPrimitiveTypeDecoder<Map>
org.apache.qpid.protonj2.codec.decoders.primitives.AbstractMapTypeDecoder
org.apache.qpid.protonj2.codec.decoders.primitives.Map32TypeDecoder
- All Implemented Interfaces:
MapTypeDecoder
,PrimitiveTypeDecoder<Map>
,StreamTypeDecoder<Map>
,TypeDecoder<Map>
Decoder of AMQP Map value from a byte stream
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
int
readCount
(InputStream stream, StreamDecoderState state) Reads the count of entries in the encoded Map.int
readCount
(ProtonBuffer buffer, DecoderState state) Reads the count of entries in the encoded Map.int
readSize
(InputStream stream, StreamDecoderState state) Reads the size in bytes of the encoded primitive from the givenInputStream
and returns it.int
readSize
(ProtonBuffer buffer, DecoderState state) Reads the size in bytes of the encoded AMQP type from the given buffer and returns it.Methods inherited from class org.apache.qpid.protonj2.codec.decoders.primitives.AbstractMapTypeDecoder
readValue, readValue, scanKeys, scanKeys, skipValue, skipValue
Methods inherited from class org.apache.qpid.protonj2.codec.decoders.AbstractPrimitiveTypeDecoder
isArrayType, isJavaPrimitive, isNull, 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.MapTypeDecoder
getTypeClass
Methods inherited from interface org.apache.qpid.protonj2.codec.decoders.PrimitiveTypeDecoder
isJavaPrimitive, isPrimitive
Methods inherited from interface org.apache.qpid.protonj2.codec.StreamTypeDecoder
getTypeClass, isArrayType, isNull, readArrayElements
Methods inherited from interface org.apache.qpid.protonj2.codec.TypeDecoder
isArrayType, isNull, readArrayElements
-
Constructor Details
-
Map32TypeDecoder
public Map32TypeDecoder()
-
-
Method Details
-
getTypeCode
public int getTypeCode()- Returns:
- the AMQP Encoding Code that this primitive type decoder can read.
-
readSize
Description copied from interface:TypeDecoder
Reads the size in bytes of the encoded AMQP type from the given buffer and returns it. Since this methods advances the read position of the provided buffer the caller must either reset that based on a previous mark or they must read the primitive payload manually as the decoder would not be able to read the value as it has no retained state.- Parameters:
buffer
- the source of encoded data.state
- the current state of the decoder.- Returns:
- the size in bytes of the encoded primitive value.
- Throws:
DecodeException
- if an error is encountered while reading the encoded size.
-
readCount
Description copied from interface:MapTypeDecoder
Reads the count of entries in the encoded Map.This value is the total count of all key values pairs, and should always be an even number as Map types cannot be unbalanced.
- Parameters:
buffer
- The buffer containing the encoded Map type.state
- TheDecoderState
used during this decode.- Returns:
- the number of elements that we encoded from the original Map.
- Throws:
DecodeException
- if an error occurs reading the value
-
readSize
Description copied from interface:StreamTypeDecoder
Reads the size in bytes of the encoded primitive from the givenInputStream
and returns it. Since this methods advances the read position of the provided stream the caller must either reset that based on a previous mark or they must read the primitive payload manually as the decoder would not be able to read the value as it has no retained state.- Parameters:
stream
- the source of encoded data.state
- the current state of the decoder.- Returns:
- the size in bytes of the encoded primitive value.
- Throws:
DecodeException
- if an error is encountered while reading the encoded size.
-
readCount
Description copied from interface:MapTypeDecoder
Reads the count of entries in the encoded Map.This value is the total count of all key values pairs, and should always be an even number as Map types cannot be unbalanced.
- Parameters:
stream
- The InputStream containing the encoded Map type.state
- TheStreamDecoderState
used during this decode.- Returns:
- the number of elements that we encoded from the original Map.
- Throws:
DecodeException
- if an error occurs reading the value
-