...
Various types can be used to set values of message properties and values in Map, List messages. The matrices below show how the types are converted. The red colour is used to highlight the types where conversion is unsupported yet. The orange/yellow colours are used to highlight the types for which conversion is implemented but the target type does not correspond to the original one even when protocol supports such type. The green colour is used to highlight the types where conversion is implemented into correct corresponding type on another protocol.
X - used to indicate the corresponding type to convert to
? - used to indicate the type which is currently used to convert
AMQP 0-8/0-9.x types conversion into AMQP 1.0
...
types
AMQP 0- |
---|
...
9.1 | types \ 1-type | JMS type | AMQP 1.0 types | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
null | boolean | ubyte | ushort | uint | ulong | byte | short | int | long | float | double | decimal32 | decimal64 | decimal128 | char | timestamp | uuid | binary | string | symbol | list | map | array | ||||||||||||||||||||||||
short-string | bit- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
| ||||||||||||||||||||||
shortlong-string | String |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| long | ||||||||||||||||||||||
field-array | - | string
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
| X |
|
| ||||||||||||||||||||||
field-table | - |
|
|
|
|
|
|
|
| ?
|
|
|
|
|
|
|
|
|
|
|
|
|
| field-arrayX |
| ||||||||||||||||||||||
float | float |
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
| X |
| field-table |
|
|
|
| ||||||||||||||||||||||
double | double |
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| X |
| float |
|
|
|
|
|
|
| |||||||||||||||||||||
void | null | X |
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
| double |
| ||||||||||||||||||||||
boolean | boolean |
| X |
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||
byte ( | decimalshort-short- | valueint) | byte |
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| void | |||||||||||||||||||
short (short-int) | short | X
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| boolean | ||||||||||||||||||||||
integer (long-int) | int |
| X |
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||
byte long (shortlong-shortlong-int) | long |
|
|
|
|
|
| X |
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||
unsigned byte (short-short-uint) | - |
|
| X |
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||
unsigned short (short- | intuint) | - |
|
|
| X |
|
|
| X? |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||
unsigned | short integer ( | shortlong-uint) | - |
|
|
|
| X |
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| integer |||||||||||||||||||
unsigned long (long- | intlong-unit) | - |
|
|
|
|
| X |
|
|
| X? |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||
timestamp | unsigned integer (long-uint)- |
|
|
|
|
|
|
|
|
| ? |
|
|
|
|
|
| X |
|
|
|
|
|
|
|
| long |||||||||||||||||||||
decimal ( | longdecimal- | long-intvalue) |
|
|
|
|
|
|
|
| X
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
| unsigned long (long-long-unit)|||||||||||||||||||||
binary * | byte[]** |
|
|
|
|
|
|
|
|
| ?
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||
ascii string * | - | binary * |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ascii string *|||||||||||||||||||||
wide string * | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
| ||||||||||||||||||||||
wide string ascii character * |
|
|
| - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
| ascii character * |
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
* * - types are not defined in 0-9.1/0-9/0-8 specifications
** - can be used as a Map message value. JMS does not allow using in values for message properties
AMQP 0-8/0-9.x types conversion into AMQP 0-10 types
AMQP 0-9.1 type | JMS type | AMQP | 1/0-10 types | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
void | boolean | char | int8 | int16 | int32 | int64 | float | double | map | list | uuid | str16 | vbin32 | datetime | dec32 | dec64 | uint8 | uint16 | uint32 | uint64 | |||||||||||||||||||||||
bit |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
short-string | - |
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
| ||||||||||||||||||||||
long-string | String |
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
| ||||||||||||||||||||||
field-array | - | timestamp
|
|
|
|
|
| ?
|
|
|
| X |
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||
field-arraytable | - |
|
|
|
|
|
|
|
|
| X |
| X |
|
|
|
|
|
|
|
| field-table | |||||||||||||||||||||
float | float |
|
|
|
|
|
|
| X |
|
| X |
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||
double | double | float |
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||
void | null | Xdouble |
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||
boolean | boolean | decimal (decimal-value)
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| void | |||||||||||||||||||||
byte (short-short-int) | byte | X |
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||
short (short-int) | short | boolean
| X |
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||
byte integer (short-shortlong-int) | integer |
|
|
| X |
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
| unsigned byte | |||||||||||||||||||||
long ( | shortlong- | shortlong- | uintint) | long |
|
|
| ?
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||
unsigned byte(short | (-short- | intuint) | - |
|
|
| ? |
| X
|
|
|
|
|
|
|
|
|
|
|
| X |
|
| ||||||||||||||||||||
unsigned short (short-uint) | - |
|
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
| X |
| ||||||||||||||||||||||
unsigned integer (long- | intuint) | - |
|
|
|
|
| X? |
|
|
|
|
|
|
|
|
|
|
|
|
| X | |||||||||||||||||||||
unsigned integer long (long-long-uintunit) | - |
|
|
|
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
| X | |||||||||||||||||||||
timestamp | long (long- | long-int)
|
|
|
|
|
| X? |
|
|
|
|
|
|
| X |
|
|
|
|
| unsigned long | |||||||||||||||||||||
decimal ( | longdecimal- | long-unit)value) | - |
|
|
|
|
|
|
| ?
|
|
|
|
|
|
|
| X |
|
|
|
| ||||||||||||||||||||
binary * | byte[]** |
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
| ||||||||||||||||||||||
ascii string * | - |
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
| ||||||||||||||||||||||
wide string * | - |
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
| ||||||||||||||||||||||
ascii character * | - |
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* - types are not defined in 0-9.1/0-9/0-8 specifications
** - byte[] can be used as a Map message value. JMS does not allow using in values for message properties
AMQP 0-10 types conversion into AMQP
...
0
...
-8/0-9.x
0-10 defines the following mandatory types: uint8, uint16, uint32, sequence-no, uint64, datetime, uuid, vbin8, str8, vbin16, str16, byte-ranges, sequence-set, vbin32,map, array, struct32, bit.
AMQP 0-10 | types \type
| JMS Type | AMQP 0-9 | -.1 types | ||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
short-string | long-string | timestamp | field-array | field-table | float | double | decimal | void | boolean | byteunsign | unsigned byte | shortunsign | unsigned short | int | unsigned int | long | unsigned long | binary | ascii str | wide str | ascii char | |||||||||||||||||||||||||
bin8 | - |
|
|
|
|
|
|
|
|
|
|
|
| ? |
|
|
|
|
| X |
|
|
| |||||||||||||||||||||||
int8 | byte |
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
uint8 | - |
|
|
|
|
|
|
|
|
|
|
| X | ? |
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
char | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X | |||||||||||||||||||||||
boolean | boolean |
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
bin16 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
| ? |
|
|
| X |
|
|
| |||||||||||||||||||||||
int16 | short |
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
uint16 | - |
|
|
|
|
|
|
|
|
|
|
|
|
| X | ? |
|
|
|
|
|
|
| |||||||||||||||||||||||
bin32 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ? |
| X |
|
|
| |||||||||||||||||||||||
int32 | int |
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
| |||||||||||||||||||||||
uint32 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X | ? |
|
|
|
|
| |||||||||||||||||||||||
float | float |
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
char-utf32 | - |
| X*** |
|
|
|
|
|
|
|
|
|
|
|
| ? |
|
|
|
|
|
| | |||||||||||||||||||||||
sequence-no | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |||||||||||||||||||||||
bin64 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ? |
| X |
|
|
| |||||||||||||||||||||||
int64 | long |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| |||||||||||||||||||||||
uint64 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ? | X |
|
|
|
| |||||||||||||||||||||||
double | double |
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
datetime | - |
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
| ? |
|
|
|
|
| |||||||||||||||||||||||
bin128 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |||||||||||||||||||||||
uuid ** | - | X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
bin256 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |||||||||||||||||||||||
bin512 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |||||||||||||||||||||||
bin1024 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |||||||||||||||||||||||
bin40 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |||||||||||||||||||||||
dec32 | - |
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
| ? |
|
|
| |||||||||||||||||||||||
bin72 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |||||||||||||||||||||||
dec64 | - |
|
|
|
|
|
|
| |
|
|
|
|
|
|
|
|
|
| ?X |
|
|
| |||||||||||||||||||||||
void | null |
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
bit | - |
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
| ? |
|
|
| |||||||||||||||||||||||
vbin8 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |||||||||||||||||||||||
str8-latin | - | X | ? |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
str8 | - |
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
str8-utf16 | - |
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
vbin16 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |||||||||||||||||||||||
str16-latin | - |
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
str16 | - |
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
str16-utf16 | String |
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
byte-ranges | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ?X |
|
|
| |||||||||||||||||||||||
sequence-se | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ?X |
|
|
| |||||||||||||||||||||||
vbin32 | byte[] **** |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |||||||||||||||||||||||
map | - |
|
|
|
| X* |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
list | - |
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
array | - |
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||||||||||||||||||||||
struct32 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
X* - failure when conversion key with length > 255* - the type of keys in AMQP 0-10 map is utf8 encoded str8 whilst earlier protocols's FiledTable key type is short-string which allows only ASCII characters. Thus, conversion of UTF characters into ASCII characters would change the keys.
** - UUID type is unsupported by by AMQP 0-8/0-9.x. An exception is thrown on attempt to convert. Should it be converted into short string?
*** - there is no corresponding type in AMQP 0-8/..0-9.x. An exception is thrown on attempt to convert. Should it be converted into short string?Thus, the most appropriate type for conversion UTF32 char is long-string.
**** - byte[] can be used as a Map message value. JMS does not allow using in values for message properties
AMQP 0-10 types conversion into AMQP 1.0 types
AMQP 0-10 type | JMS Type | AMQP 1. | 0-10 types \ 1-0 types | ||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
null | boolean | ubyte | ushort | uint | ulong | byte | short | int | long | float | double | decimal32 | decimal64 | decimal128 | char | timestamp | uuid | binary | string | symbol | list | map | array | ||||||||||||||||||||||||||
bin8 | - |
|
|
|
|
|
|
| ? |
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
int8 | byte |
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
uint8 | - |
|
| X |
|
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
char | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
boolean | boolean |
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
bin16 | - |
|
|
|
|
|
|
|
| ? |
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
int16 | short |
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
uint16 | - |
|
|
| X |
|
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
bin32 | - |
|
|
|
|
|
|
|
|
| ? |
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
int32 | int |
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
uint32 | - |
|
|
|
| X |
|
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
float | float |
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
char-utf32 | - |
|
|
|
|
|
|
|
| ? |
|
|
|
|
|
| X |
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
sequence-no | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ?X |
|
|
|
|
| ||||||||||||||||||||||||
bin64 | - |
|
|
|
|
|
|
|
|
| ? |
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
int64 | long |
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
uint64 | - |
|
|
|
|
| X |
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
double | double |
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
datetime | - |
|
|
|
|
|
|
|
|
| ? |
|
|
|
|
|
| X |
|
|
|
|
|
|
| ||||||||||||||||||||||||
bin128 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
uuid | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
| ||||||||||||||||||||||||
bin256 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
bin512 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
bin1024 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
bin40 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
dec32 | - |
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ? |
|
|
|
|
| ||||||||||||||||||||||||
bin72 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
dec64 | - |
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
| ? |
|
|
|
|
| ||||||||||||||||||||||||
void | null | X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||||||||||||||||||||||||
bit | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ?X |
|
|
|
|
| ||||||||||||||||||||||||
vbin8 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
str8-latin | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
| ||||||||||||||||||||||||
str8 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
| ||||||||||||||||||||||||
str8-utf16 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
| ||||||||||||||||||||||||
vbin16 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ||||||||||||||||||||||||
str16-latin | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
| ||||||||||||||||||||||||
str16 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
| ||||||||||||||||||||||||
str16-utf16 | String |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
| ||||||||||||||||||||||||
byte-ranges | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ?X |
|
|
|
|
| ||||||||||||||||||||||||
sequence-se | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ?X |
|
|
|
|
| ||||||||||||||||||||||||
vbin32 | byte[] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
| ||||||||||||||||||||||||
mapmap | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
| ||||||||||||||||||||||||
list | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X | ||||||||||||||||||||||||
array | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X | ||||||||||||||||||||||||
struct32 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
AMQP 1-0 types conversion
...
into AMQP 0-
...
8/0-9.x
AMQP 1-0 | /type | JMS type | AMQP 0-9.1 types | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
short-string | long-string | timestamp | field-array | field-table | float | double | decimal | void | boolean | byte | ubyte | short | ushort | int | uint | long | ulong | binary | ascii str | wide str | ascii char | |||
null | null |
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
| |
boolean | boolean |
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
| |
ubyte | - |
|
|
|
|
|
|
|
|
|
|
| X | ? |
|
|
|
|
|
|
|
|
| |
ushort | - |
|
|
|
|
|
|
|
|
|
|
|
|
| X | ? |
|
|
|
|
|
|
| |
uint | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X | ? |
|
|
|
|
| |
ulong | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ? | X |
|
|
|
| |
byte | byte |
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
| |
short | short |
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
| |
int | int |
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
| |
long | long |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| |
float | float |
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
double | double |
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
decimal32 | - |
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
decimal64 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |
decimal128 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |
char | - |
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ? **** | |
timestamp | - |
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
| ? |
|
|
|
|
| |
uuid *** | - | X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
binary | byte[] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |
string | String |
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
symbol | - |
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
list | - |
|
|
| X** |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
map | - |
|
|
|
| X * |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
array | - |
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
X* - exception on key length > 255
* - 1.0 map allows any type in keys whilst 0-8...0-9-1 FiledTable type only allows short-strings as key type. For string keys with length greater than 256, an exception is thrown on conversion.
** - list in AMQP 1.0 is a sequence of polymorphic values valued FieldArray is not.
*** - UUID type is unsupported by AMQP 0-8/0-9.x. An exception is thrown on attempt to convert. Should it be converted into short string?
? **** - char in 1-0 is a UTF-32BE encoded unicode character but char in 0-10 is an octet. Should it be converted into string?
AMQP 1-0 types conversion into AMQP 0-10 types
AMQP 1-0 | /type | JMS type | AMQP 0-10 types | |||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
void | boolean | char | char-utf32 | int8 | int16 | int32 | int64 | float | double | map | list | uuid | str16 | vbin32 | datetime | dec32 | dec64 | uint8 | uint16 | uint32uint64 | unit64 | |||
null | null | X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||
boolean | boolean |
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||
ubyte | - |
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
| |||
ushort | - |
|
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
| X |
| |||
uint | - |
|
|
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
| X | |||
ulong | - |
|
|
|
|
|
| ? |
|
|
|
|
|
|
|
|
|
|
|
|
| X | ||
byte | byte |
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||
short | short |
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||
int | int |
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |||
long | long |
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
|
| |||
float | float |
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
|
| |||
double | double |
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
|
| |||
decimal32 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
| |||
decimal64 | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
| |||
decimal128 | - |
| decimal128 |
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
| |||
char | - |
|
| ?* | X |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| ||
timestamp | - |
|
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
| ? | ||
uuid | - |
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
| |||
binary | byte[] |
|
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
| |||
string | String |
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
| |||
symbol | - |
|
|
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
| |||
list | - |
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
| |||
map | - |
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
| |||
array | - |
|
|
|
|
|
|
|
|
|
| X |
|
|
|
|
|
|
|
|
|
?* - char in 1-0 is a UTF-32BE encoded unicode character but char in 0-10 is an octet. It should be converted into char-utf32
Message properties conversion matrices
...
Message types conversion matrices
TODO
.