net.corda.core.messaging

## Interface Message

- All Known Subinterfaces:
    ReceivedMessage

      public Message

  A message is defined, at this level, to be a (topic, timestamp, byte arrays) triple, where the topic is a string in Java-style reverse dns form, with "platform." being a prefix reserved by the platform for its own use. Vendor specific messages can be defined, but use your domain name as the prefix e.g. "uk.co.bigbank.messages.SomeMessage".

  The debugTimestamp field is intended to aid in tracking messages as they flow across the network, likewise, the message ID is intended to be an ad-hoc way to identify a message sent in the system through debug logs and so on. These IDs and timestamps should not be assumed to be globally unique, although due to the nanosecond precision of the timestamp field they probably will be, even if an implementation just uses a hash prefix as the message id.

- - ### Method Summary

    All Methods Instance Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `byte[]` | `getData()`
    `java.time.Instant` | `getDebugTimestamp()`
    `TopicSession` | `getTopicSession()`
    `java.util.UUID` | `getUniqueMessageId()`

- - ### Method Detail

    - #### getTopicSession

          TopicSession getTopicSession()

    - #### getData

          byte[] getData()

    - #### getDebugTimestamp

          java.time.Instant getDebugTimestamp()

    - #### getUniqueMessageId

          java.util.UUID getUniqueMessageId()