Proton DotNet
All Classes Namespaces Functions Variables Enumerations Enumerator Properties Pages
Namespaces | Classes | Enumerations
Apache.Qpid.Proton.Codec Namespace Reference

Classes

class  CodecFactory
 A CodecFactory provides a means of creating built in or custom Proton AMQP type encoders and decoders.
 
class  DecodeEOFException
 Decode exception thrown when a decode operation fails because it reached the end of available input before fully decoding the value it is currently working with. More...
 
class  DecodeException
 
interface  IPrimitiveArrayTypeDecoder
 Defines an interface for an decoder of a primitive array types More...
 
interface  IPrimitiveTypeDecoder
 Defines an interface for an decoder of a primitive types More...
 
interface  IUtf8Decoder
 Interface for an external UTF8 Decoder that can be supplied by a client which implements custom decoding logic optimized for the application using the Codec. More...
 
interface  IUtf8StreamDecoder
 Interface for an external UTF8 Decoder that can be supplied by a client which implements custom decoding logic optimized for the application using the Codec. More...
 
class  EncodeException
 
interface  IDecoder
 Defines a Decoder that handles translating the encoded AMQP performative bytes into the appropriate Proton AMQP types. More...
 
interface  IDecoderState
 Defines a state object that is used with the AMQP Decoder type to hold intermediate state and provide additional functionality that can be used during the decode process. More...
 
interface  IDescribedTypeDecoder
 
interface  IDescribedTypeEncoder
 
interface  IEncoder
 Defines an Encoder type that translates AMQP performatives into their encoded byte representations. More...
 
interface  IEncoderState
 Defines a state object that is used with the AMQP Encoder type to hold intermediate state and provide additional functionality that can be used during the encode process. More...
 
interface  IStreamDecoder
 Defines a Decoder that handles translating the encoded AMQP performative bytes into the appropriate Proton AMQP types. More...
 
interface  IStreamDecoderState
 Defines a state object that is used with the AMQP Decoder type to hold intermediate state and provide additional functionality that can be used during the decode process. More...
 
interface  IStreamDescribedTypeDecoder
 
interface  IStreamTypeDecoder
 Defines an interface for an decoder of a specific type. More...
 
interface  ITypeDecoder
 Defines an interface for an decoder of a specific type. More...
 
interface  ITypeEncoder
 Defines an interface for an encoder of a specific type. More...
 

Enumerations

enum class  EncodingCodes : byte {
  DescribedTypeIndicator = 0x0 , Null = 0x40 , Boolean = 0x56 , BooleanTrue = 0x41 ,
  BooleanFalse = 0x42 , UByte = 0x50 , UShort = 0x60 , UInt = 0x70 ,
  SmallUInt = 0x52 , UInt0 = 0x43 , ULong = 0x80 , SmallULong = 0x53 ,
  ULong0 = 0x44 , Byte = 0x51 , Short = 0x61 , Int = 0x71 ,
  SmallInt = 0x54 , Long = 0x81 , SmallLong = 0x55 , Float = 0x72 ,
  Double = 0x82 , Decimal32 = 0x74 , Decimal64 = 0x84 , Decimal128 = 0x94 ,
  Char = 0x73 , Timestamp = 0x83 , Uuid = 0x98 , VBin8 = 0xa0 ,
  VBin32 = 0xb0 , Str8 = 0xa1 , Str32 = 0xb1 , Sym8 = 0xa3 ,
  Sym32 = 0xb3 , List0 = 0x45 , List8 = 0xc0 , List32 = 0xd0 ,
  Map8 = 0xc1 , Map32 = 0xd1 , Array8 = 0xe0 , Array32 = 0xf0
}
 Enumeration of the AMQP type encoding codes More...
 

Enumeration Type Documentation

◆ EncodingCodes

Enumeration of the AMQP type encoding codes

Enumerator
DescribedTypeIndicator 

Indicates that the value that follows will be an AMQP Described Type

Null 

Indicates that the value encoded was null

Boolean 

Indicates the byte that follows indicates a Boolean true or false value.

BooleanTrue 

A compact encoding for a boolean value that directly implies a value of true.

BooleanFalse 

A compact encoding for a boolean value that directly implies a value of false.

UByte 

Indicates that the next byte represents an unsigned byte value.

UShort 

Indicates that the next two bytes represents an unsigned short value.

UInt 

Indicates that the next four bytes represents an unsigned integer value.

SmallUInt 

Compact encoding where the next byte represents an unsigned integer value.

UInt0 

Compact encoding for an unsigned integer whose value is zero.

ULong 

Indicates that the next eight bytes represents an unsigned long value.

SmallULong 

Compact encoding where the next byte represents an unsigned long value.

ULong0 

Compact encoding for an unsigned long whose value is zero.

Byte 

Indicates that the next byte represents an signed byte value.

Short 

Indicates that the next two bytes represents an signed short value.

Int 

Indicates that the next four bytes represents an signed integer value.

SmallInt 

Compact encoding where the next byte represents a signed integer value.

Long 

Indicates that the next eight bytes represents an signed long value.

SmallLong 

Compact encoding where the next byte represents a signed long value.

Float 

Indicates that the next four bytes represents an float value.

Double 

Indicates that the next eight bytes represents an double value.

Decimal32 

Indicates that the next four bytes represents an AMQP Decimal32 value.

Decimal64 

Indicates that the next eight bytes represents an AMQP Decimal64 value.

Decimal128 

Indicates that the next sixteen bytes represents an AMQP Decimal128 value.

Char 

Indicates that the next two bytes represents an character value.

Timestamp 

Indicates that the next four bytes represents an AMQP Timestamp value.

Uuid 

Indicates that the next sixteen bytes represents an UUID value.

VBin8 

Indicates that a small binary encoding follows and the next byte will indicate the number of trailing bytes that comprise the binary value.

VBin32 

Indicates that a binary encoding follows and the next four bytes compose an integer whose value is the number of trailing bytes that comprise the binary value.

Str8 

Indicates that a small UTF-8 string encoding follows and the next byte will indicate the number of trailing bytes that comprise the encoded string value.

Str32 

Indicates that a UTF-8 string encoding follows and the next four bytes compose an integer whose value is the number of trailing bytes that comprise the encoded string value.

Sym8 

Indicates that a small AMQP Symbol encoding follows and the next byte will indicate the number of trailing bytes that comprise the Symbol value (in ASCII bytes).

Sym32 

Indicates that an AMQP Symbol encoding follows and the next four bytes compose an integer whose value is the number of trailing bytes that comprise the Symbol value (in ASCII bytes).

List0 

Indicates that a zero sized List type was encoded (no additional byte follow for this encoding)

List8 

Indicates that a small List encoding follows and the next two bytes will indicate the total list encoding size and the number of entries in the list respectively. Each element of the list is then encoded using their normal AMQP encoded form.

List32 

Indicates that a List encoding follows and the next eight bytes will indicate the total list encoding size and the number of entries in the list respectively as integer values. Each element of the list is then encoded using their normal AMQP encoded form.

Map8 

Indicates that a small Map encoding follows and the next two bytes will indicate the total Map encoding size and the number of entries in the Map respectively (read as integer values). . Each entry of the Map is then encoded using their normal AMQP encoded form. The total Map size is one half the number of elements indicated by the number of entries value read.

Map32 

Indicates that a Map encoding follows and the next eight bytes will indicate the total Map encoding size and the number of entries in the Map respectively (read as integer values). Each entry of the Map is then encoded using their normal AMQP encoded form. The total Map size is one half the number of elements indicated by the number of entries value read.

Array8 

Indicates that a small array encoding follows. The array is encoded using the next three bytes to represent the total encoded array size, the number of entries in the array and the encoding code of the type that comprises the array in that order.

Array32 

Indicates that a array encoding follows. The array is encoded using the next nine bytes to represent the total encoded array size, the number of entries in the array and the encoding code of the type that comprises the array in that order.