...
AMQP 0-8...0-9-1 message | Internal message | Implemented | |||||
---|---|---|---|---|---|---|---|
Property origin | Property name | type | Property class | Property name | Type | Comments | |
message property | delivery mode | octet | InternalMessage InternalMessageMetaData | isPeristent() | boolean |
| Y |
message property | priority | octet | MessageHeader | priority | byte |
| Y |
message property | expiration | short-string | MessageHeader | expiration | long | Y | |
message property | timestamp | long | MessageHeader | timestamp | long | Y | |
message property | content type | short-string | MessageHeader | contentType | String |
| Y |
message property | encoding | short-string | MessageHeader | encoding | String |
| Y |
message property | message id | short-string | MessageHeader | messageId | String |
| Y |
message property | correlation id | short-string | MessageHeader | correlationId | String |
| Y |
message property | user id | short-string | MessageHeader | userId | String |
| Y |
message property | reply to | short-string | MessageHeaderreplyTo | getReplyTo() | String | If 'reply to' is a BURL parses it and converts it into <exchange>/<routingKey> format | Y |
message property | application id | short-string | MessageHeader | appId | String |
| Y |
message property | headers | field-table | MessageHeaderapplication-headers | getHeadersMap() | Map<String,Object> |
| Y |
message property | type | short-string | MessageHeader type | getType() | String |
| Y |
entry delivery count | int | MessageHeader | redelivered | bit | dynamically set on sending |
| |
basic.publish | routing-key | short-string | InternalMessage | initialRoutingAddress | String |
| N |
basic.publish | exchange | short-string | InternalMessage | to | String |
| Y |
basic.publish | immediate | bit |
|
|
|
| N |
basic.publish | mandatory | bit |
|
|
|
| N |
...
Internal message | AMQP 0-8...0-9-1 message | Implemented
| |||||
---|---|---|---|---|---|---|---|
Property origin | Property name | Type | Section name | Property name | Type | Comments | |
InternalMessage InternalMessageMetaData | isPersistent() isPersistent() | boolean | message property | delivery mode | unsigned byte |
| Y |
MessageHeader | getPriority() | byte | message property | priority | unsigned byte |
| Y |
MessageHeader | getExpiration() | long | message property | expiration | short-string | Y | |
MessageHeader | getMessageId() | String | message property | message-id | short-string | if conversion to short-string fails 'message-id' is not set | Y |
MessageHeader | getCorrelationId() | String | message property | correlation-id | short-string | MessageConversionException is thrown when conversion to short-string fails | Y |
MessageHeader | getUserId() | String | message property | user-id | short-string | if conversion to short-string fails 'user-id' is not set | Y |
MessageHeader | getTimestamp() | datetime | message property | timestamp | long |
| Y |
MessageHeader | getReplyTo() | String | message property | reply-to | short-string | shoud potentially convert to BURL MessageConversionException should be thrown when conversion to short-string fails | TODO |
InternalMessage | getTo() | String | message property | to | string |
| TODO |
InternalMessage | getEncoding() | String | message property | encoding | short-string | MessageConversionException is thrown when conversion to short-string fails | Y |
MessageHeader | getMimeType() | str8 | message property | content-type | short-string |
| TODO |
MessageHeader | getContentType() | str8 | message property | content-type | short-string |
| TODO |
message property | subject | string | N | ||||
MessageHeader | getHeader(String)/getHeaderNames() | String/Enumeration | message property | headers | field-table | MessageConversionException is thrown when key or value is invalid | Y |
basic.publish | routing-key | short-string | TODO | ||||
basic.publish | exchange | short-string | TODO | ||||
basic.publish | immediate | bit | N | ||||
basic.publish | mandatory | bit | N |
AMQP 0-10 message properties conversion into internal message properties
AMQP 0-10 message | Internal message | Implemented
| |||||
---|---|---|---|---|---|---|---|
Property origin | Property name | Type | Class name | Property name | Type | Comments | |
delivery-properties | delivery-mode | uint8 | InternalMessage InternalMessageMetaData | isPersistent() | boolean |
| Y |
delivery-properties | priority | uint8 | MessageHeader | getPriority() | byte |
| Y |
delivery-properties | ttl | uint64 | MessageHeader | getExpiration() | long | the 'ttl' delivery-property takes precedence over 'expiration' | Y |
delivery-properties | expiration | datetime | MessageHeader | getExpiration() | long | the 'ttl' delivery-property takes precedence over 'expiration' | Y |
delivery-properties | timestamp | datetime | MessageHeader | getTimestamp() | long | if not set, the arrival time is used as timestamp | Y |
delivery-properties | redelivered | bit | N | ||||
delivery-properties | routing-key | str8 | InternalMessage | getInitialRoutingAddress() | String | TODO | |
delivery-properties | exchange | str8 | InternalMessage | getTo() | String | TODO | |
delivery-properties | immediate | bit |
|
| N | ||
delivery-properties | discard-unroutable | bit |
| N | |||
message-properties | content-type | str8 | InternalMessage | getContentType() | String |
| TODO |
message-properties | content-encoding | str8 | MessageHeader | getEncoding() | string |
| Y |
message-properties | message-id | uuid | MessageHeader | getMessageId() | String |
| Y |
message-properties | correlation-id | vbin16 | MessageHeader | getCorrelationId() | String |
| Y |
message-properties | user-id | vbin16 | MessageHeader | getUserId() | String |
| Y |
message-properties | reply-to | reply-to | MessageHeader | getReplyTo() | String | <exchange name>/<routing key> | TODO |
message-properties | app-id | vbin16 | MessageHeader | getAppId() | String |
| Y |
message-properties | application-headers | map | MessageHeader | getHeadersMap() | Map<String,Object> |
| Y |
message-properties | content-length | uint64 |
|
|
|
|
|
message-properties | application-headers['x-jms-type'] | str16 | MessageHeader | getType() | String | 'x-jms-type' is not removed from application headers | Y |
Content conversion
Conversion of message content from AMQP 0-8...0-9-1 into AMQP 0-10 and back is simply a matter of copying the content bytes.
...