= Properties for Copied Messages
:idprefix:
:idseparator: -

There are several operations within the broker that result in copying a message.
These include:

* Diverting a message from one address to another.
* Moving an expired message from a queue to the configured `expiry-address`
* Moving a message which has exceeded its `max-delivery-attempts` from a queue to the configured `dead-letter-address`
* Using the management API to administratively move messages from one queue to another

When this happens the body and properties of the original message are copied to a new message.
However, the copying process removes some potentially important pieces of data so those are preserved in the following special message properties:

_AMQ_ORIG_ADDRESS::

a String property containing the _original address_ of the message

_AMQ_ORIG_QUEUE::

a String property containing the _original queue_ of the message

_AMQ_ORIG_MESSAGE_ID::

a String property containing the _original message ID_ of the message

It's possible for the aforementioned operations to be combined.
For example, a message may be diverted from one address to another where it lands in a queue and a consumer tries & fails to consume it such that the message is then sent to a dead-letter address.
Or a message may be administratively moved from one queue to another where it then expires.

In cases like these the `ORIG` properties will contain the information from the _last_ (i.e. most recent) operation.
