Represents a message that is received from the event bus in a handler.

Messages have a body, which can be null, and also headers, which can be empty.

If the message was sent specifying a reply handler, it can be replied to using reply.

If you want to notify the sender that processing failed, then fail can be called.

- `Anything`
  - `Object`
    - `Basic` ...and other supertypes
      - `Message`

- `Message`
  - `Basic`
    - `Identifiable`
    - `Object`
      - `Anything`

no subtypes hierarchy

Initializer
`Message(Message<out Object> unknown)`

Inherited Attributes
Attributes inherited from: `Object` `hash`, `string`

Methods
`address` | `shared default String address()` The address the message was sent to
`body` | `shared default T body()` The body of the message. Can be null.
`fail` | `shared default void fail(Integer failureCode, String message)` Signal to the sender that processing of this message failed. If the message was sent specifying a result handler the handler will be called with a failure corresponding to the failure code and message specified here. Parameters: `failureCode` A failure code to pass back to the sender `message` A message to pass back to the sender
`headers` | `shared default MultiMap headers()` Multi-map of message headers. Can be empty
`isSend` | `shared default Boolean isSend()` Signals if this message represents a send or publish event.
`reply` | `shared default void reply(Object? message)` Reply to this message. If the message was sent specifying a reply handler, that handler will be called when it has received a reply. If the message wasn't sent specifying a receipt handler this method does nothing. Parameters: `message` the message to reply with.
`reply` | `shared default void reply(Object? message, DeliveryOptions options)` Link reply but allows you to specify delivery options for the reply. Parameters: `message` the reply message `options` the delivery options
`reply` | `shared default void reply<R>(Object? message, Anything(Throwable|Message<R?>) replyHandler)` The same as `reply(R message)` but you can specify handler for the reply - i.e. to receive the reply to the reply. Parameters: `message` the message to reply with. `replyHandler` the reply handler for the reply.
`reply` | `shared default void reply<R>(Object? message, DeliveryOptions options, Anything(Throwable|Message<R?>) replyHandler)` The same as `reply(R message, DeliveryOptions)` but you can specify handler for the reply - i.e. to receive the reply to the reply. Parameters: `message` the reply message `options` the delivery options `replyHandler` the reply handler for the reply.
`replyAddress` | `shared default String? replyAddress()` The reply address. Can be null.

Inherited Methods
Methods inherited from: `Object` `equals`