Package org.eclipse.emf.cdo.session.remote

## Class CDORemoteSessionMessage

- java.lang.Object
- - org.eclipse.emf.cdo.session.remote.CDORemoteSessionMessage

-     public final class CDORemoteSessionMessage
      extends java.lang.Object

  A message from a `remote session`.
  Since:
    3.0
  Author:
    Eike Stepper

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `CDORemoteSessionMessage.Priority` | Enumerates the possible `remote session message` priorities.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `CDORemoteSessionMessage​(java.lang.String type)` |
    `CDORemoteSessionMessage​(java.lang.String type, byte[] data)` |
    `CDORemoteSessionMessage​(java.lang.String type, CDORemoteSessionMessage.Priority priority)` |
    `CDORemoteSessionMessage​(java.lang.String type, CDORemoteSessionMessage.Priority priority, byte[] data)` |
    `CDORemoteSessionMessage​(org.eclipse.net4j.util.io.ExtendedDataInput in)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `byte[]` | `getData()` | Returns a copy of this message's data as a byte array.
    `org.eclipse.net4j.util.io.ExtendedDataInputStream` | `getInputStream()` | Returns a copy of this message's data as an extended input stream.
    `org.eclipse.net4j.util.io.ExtendedDataOutputStream` | `getOutputStream()` | Sets the data of this message as an extended output stream.
    `CDORemoteSessionMessage.Priority` | `getPriority()` | Returns the priority of this message.
    `java.lang.String` | `getType()` | Returns the type of this message that enables `message handlers` to decide whether to react on this message or not.
    `void` | `setData​(byte[] data)` | Sets the data of this message as a byte array.
    `java.lang.String` | `toString()` |
    `void` | `write​(org.eclipse.net4j.util.io.ExtendedDataOutput out)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### CDORemoteSessionMessage

          public CDORemoteSessionMessage​(java.lang.String type,
                                         CDORemoteSessionMessage.Priority priority,
                                         byte[] data)

    - #### CDORemoteSessionMessage

          public CDORemoteSessionMessage​(java.lang.String type,
                                         CDORemoteSessionMessage.Priority priority)

    - #### CDORemoteSessionMessage

          public CDORemoteSessionMessage​(java.lang.String type,
                                         byte[] data)

    - #### CDORemoteSessionMessage

          public CDORemoteSessionMessage​(java.lang.String type)

    - #### CDORemoteSessionMessage

          public CDORemoteSessionMessage​(org.eclipse.net4j.util.io.ExtendedDataInput in)
                                  throws java.io.IOException

      Throws:
        `java.io.IOException`

  - ### Method Detail

    - #### write

          public void write​(org.eclipse.net4j.util.io.ExtendedDataOutput out)
                     throws java.io.IOException

      Throws:
        `java.io.IOException`

    - #### getType

          public java.lang.String getType()

      Returns the type of this message that enables `message handlers` to decide whether to react on this message or not.
      Returns:
        the message type, never `null`.

    - #### getPriority

          public CDORemoteSessionMessage.Priority getPriority()

      Returns the priority of this message.
      Returns:
        the message priority, never `null`.

    - #### getData

          public byte[] getData()

      Returns a copy of this message's data as a byte array. Thread-safety for the message data is ensured internally.

    - #### setData

          public void setData​(byte[] data)

      Sets the data of this message as a byte array. Thread-safety for the message data is ensured internally.

    - #### getInputStream

          public org.eclipse.net4j.util.io.ExtendedDataInputStream getInputStream()

      Returns a copy of this message's data as an extended input stream. Thread-safety for the message data is ensured internally, but not for the wrapping stream!

    - #### getOutputStream

          public org.eclipse.net4j.util.io.ExtendedDataOutputStream getOutputStream()

      Sets the data of this message as an extended output stream. Thread-safety for the message data is ensured internally, but not for the wrapping stream!

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`