Package io.ably.lib.types
Class PresenceMessage
- java.lang.Object
-
- io.ably.lib.types.BaseMessage
-
- io.ably.lib.types.PresenceMessage
-
- All Implemented Interfaces:
java.lang.Cloneable
public class PresenceMessage extends BaseMessage implements java.lang.Cloneable
A class representing an individual presence update to be sent or received via the Ably Realtime service.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classPresenceMessage.ActionDescribes the possible actions members in the presence set can emit.static classPresenceMessage.ActionSerializerstatic classPresenceMessage.Serializer
-
Field Summary
Fields Modifier and Type Field Description PresenceMessage.ActionactionThe type ofPresenceMessage.Actionthe PresenceMessage is for.-
Fields inherited from class io.ably.lib.types.BaseMessage
clientId, connectionId, data, encoding, id, timestamp
-
-
Constructor Summary
Constructors Constructor Description PresenceMessage()Default constructorPresenceMessage(PresenceMessage.Action action, java.lang.String clientId)Construct a PresenceMessage from an Action and clientIdPresenceMessage(PresenceMessage.Action action, java.lang.String clientId, java.lang.Object data)Generic constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Objectclone()static PresenceMessagefromEncoded(com.google.gson.JsonObject messageJsonObject, ChannelOptions channelOptions)Decodes and decrypts a deserialized PresenceMessage-like object using the cipher inChannelOptions.static PresenceMessagefromEncoded(java.lang.String messageJson, ChannelOptions channelOptions)Decodes and decrypts a deserialized PresenceMessage-like object using the cipher inChannelOptions.static PresenceMessage[]fromEncodedArray(com.google.gson.JsonArray presenceMsgArray, ChannelOptions channelOptions)Decodes and decrypts an array of deserialized PresenceMessage-like object using the cipher inChannelOptions.static PresenceMessage[]fromEncodedArray(java.lang.String presenceMsgArray, ChannelOptions channelOptions)Decodes and decrypts an array of deserialized PresenceMessage-like object using the cipher inChannelOptions.java.lang.StringmemberKey()Combines clientId and connectionId to ensure that multiple connected clients with an identical clientId are uniquely identifiable.java.lang.StringtoString()Generate a String summary of this PresenceMessage-
Methods inherited from class io.ably.lib.types.BaseMessage
countFields, decode, decode, encode, getDetails, read, readLong, readString, toJsonObject
-
-
-
-
Field Detail
-
action
public PresenceMessage.Action action
The type ofPresenceMessage.Actionthe PresenceMessage is for.Spec: TP3b
-
-
Constructor Detail
-
PresenceMessage
public PresenceMessage()
Default constructor
-
PresenceMessage
public PresenceMessage(PresenceMessage.Action action, java.lang.String clientId)
Construct a PresenceMessage from an Action and clientId- Parameters:
action-clientId-
-
PresenceMessage
public PresenceMessage(PresenceMessage.Action action, java.lang.String clientId, java.lang.Object data)
Generic constructor- Parameters:
action-clientId-data-
-
-
Method Detail
-
toString
public java.lang.String toString()
Generate a String summary of this PresenceMessage- Overrides:
toStringin classjava.lang.Object- Returns:
- string
-
clone
public java.lang.Object clone()
- Overrides:
clonein classjava.lang.Object
-
fromEncoded
public static PresenceMessage fromEncoded(com.google.gson.JsonObject messageJsonObject, ChannelOptions channelOptions) throws MessageDecodeException
Decodes and decrypts a deserialized PresenceMessage-like object using the cipher inChannelOptions. Any residual transforms that cannot be decoded or decrypted will be in the encoding property. Intended for users receiving messages from a source other than a REST or Realtime channel (for example a queue) to avoid having to parse the encoding string.Spec: TP4
- Parameters:
messageJsonObject- The deserialized PresenceMessage-like object to decode and decrypt.channelOptions- AChannelOptionsobject containing the cipher.- Returns:
- A PresenceMessage object.
- Throws:
MessageDecodeException
-
fromEncoded
public static PresenceMessage fromEncoded(java.lang.String messageJson, ChannelOptions channelOptions) throws MessageDecodeException
Decodes and decrypts a deserialized PresenceMessage-like object using the cipher inChannelOptions. Any residual transforms that cannot be decoded or decrypted will be in the encoding property. Intended for users receiving messages from a source other than a REST or Realtime channel (for example a queue) to avoid having to parse the encoding string.Spec: TP4
- Parameters:
messageJson- The deserialized PresenceMessage-like object to decode and decrypt.channelOptions- AChannelOptionsobject containing the cipher.- Returns:
- A PresenceMessage object.
- Throws:
MessageDecodeException
-
fromEncodedArray
public static PresenceMessage[] fromEncodedArray(com.google.gson.JsonArray presenceMsgArray, ChannelOptions channelOptions) throws MessageDecodeException
Decodes and decrypts an array of deserialized PresenceMessage-like object using the cipher inChannelOptions. Any residual transforms that cannot be decoded or decrypted will be in the encoding property. Intended for users receiving messages from a source other than a REST or Realtime channel (for example a queue) to avoid having to parse the encoding string.Spec: TP4
- Parameters:
presenceMsgArray- An array of deserialized PresenceMessage-like objects to decode and decrypt.channelOptions- AChannelOptionsobject containing the cipher.- Returns:
- An array of PresenceMessage object.
- Throws:
MessageDecodeException
-
fromEncodedArray
public static PresenceMessage[] fromEncodedArray(java.lang.String presenceMsgArray, ChannelOptions channelOptions) throws MessageDecodeException
Decodes and decrypts an array of deserialized PresenceMessage-like object using the cipher inChannelOptions. Any residual transforms that cannot be decoded or decrypted will be in the encoding property. Intended for users receiving messages from a source other than a REST or Realtime channel (for example a queue) to avoid having to parse the encoding string.Spec: TP4
- Parameters:
presenceMsgArray- An array of deserialized PresenceMessage-like objects to decode and decrypt.channelOptions- AChannelOptionsobject containing the cipher.- Returns:
- An array of PresenceMessage object.
- Throws:
MessageDecodeException
-
memberKey
public java.lang.String memberKey()
Combines clientId and connectionId to ensure that multiple connected clients with an identical clientId are uniquely identifiable. A string function that returns the combined clientId and connectionId.Spec: TP3h
- Returns:
- A combination of clientId and connectionId.
-
-