public class ChannelData extends Object implements ChannelMessage
ChannelData object is used to transfer a message through the
 channel interceptor stack and eventually out on a transport to be sent
 to another node. While the message is being processed by the different
 interceptors, the message data can be manipulated as each interceptor seems appropriate.| Modifier and Type | Field and Description | 
|---|---|
| static ChannelData[] | EMPTY_DATA_ARRAY | 
| static boolean | USE_SECURE_RANDOM_FOR_UUID | 
| Constructor and Description | 
|---|
| ChannelData()Creates an empty channel data with a new unique Id | 
| ChannelData(boolean generateUUID)Create an empty channel data object | 
| ChannelData(byte[] uniqueId,
           XByteBuffer message,
           long timestamp)Creates a new channel data object with data | 
| Modifier and Type | Method and Description | 
|---|---|
| static String | bToS(byte[] data) | 
| ChannelData | clone()Create a shallow clone, only the data gets recreated | 
| Object | deepclone()Complete clone | 
| boolean | equals(Object o)Compares to ChannelData objects, only compares on getUniqueId().equals(o.getUniqueId()) | 
| void | generateUUID()Generates a UUID and invokes setUniqueId | 
| Member | getAddress()Returns the source or reply-to address | 
| static ChannelData | getDataFromPackage(byte[] b) | 
| static ChannelData | getDataFromPackage(XByteBuffer xbuf)Deserializes a ChannelData object from a byte array | 
| byte[] | getDataPackage()Serializes the ChannelData object into a byte[] array | 
| byte[] | getDataPackage(byte[] data,
              int offset) | 
| int | getDataPackageLength() | 
| XByteBuffer | getMessage()returns the byte buffer that contains the actual message payload | 
| int | getOptions()The message options is a 32 bit flag set
 that triggers interceptors and message behavior. | 
| long | getTimestamp()Timestamp of when the message was created. | 
| byte[] | getUniqueId()Each message must have a globally unique Id. | 
| int | hashCode() | 
| static boolean | sendAckAsync(int options)Utility method, returns true if the options flag indicates that an ack
 is to be sent after the message has been received but not yet processed | 
| static boolean | sendAckSync(int options)Utility method, returns true if the options flag indicates that an ack
 is to be sent after the message has been received and processed | 
| void | setAddress(Member address)Sets the source or reply-to address | 
| void | setMessage(XByteBuffer message)The byte buffer that contains the actual message payload | 
| void | setOptions(int options)Sets the message options. | 
| void | setTimestamp(long timestamp)Sets the timestamp of this message | 
| void | setUniqueId(byte[] uniqueId) | 
| String | toString() | 
public static final ChannelData[] EMPTY_DATA_ARRAY
public static volatile boolean USE_SECURE_RANDOM_FOR_UUID
public ChannelData()
ChannelData(boolean)public ChannelData(boolean generateUUID)
generateUUID - boolean - if true, a unique Id will be generatedpublic ChannelData(byte[] uniqueId,
           XByteBuffer message,
           long timestamp)
uniqueId - - unique message idmessage - - message datatimestamp - - message timestamppublic XByteBuffer getMessage()
ChannelMessagegetMessage in interface ChannelMessagepublic void setMessage(XByteBuffer message)
ChannelMessagesetMessage in interface ChannelMessagemessage - The message to send.public long getTimestamp()
ChannelMessagegetTimestamp in interface ChannelMessagepublic void setTimestamp(long timestamp)
ChannelMessagesetTimestamp in interface ChannelMessagetimestamp - The timestamp to sendpublic byte[] getUniqueId()
ChannelMessagegetUniqueId in interface ChannelMessagepublic void setUniqueId(byte[] uniqueId)
uniqueId - The uniqueId to send.public int getOptions()
ChannelMessagegetOptions in interface ChannelMessageChannel.send(Member[], Serializable, int), 
ChannelInterceptor.getOptionFlag()public void setOptions(int options)
setOptions in interface ChannelMessageoptions - the message optionsChannelMessage.getOptions()public Member getAddress()
getAddress in interface ChannelMessagepublic void setAddress(Member address)
setAddress in interface ChannelMessageaddress - Memberpublic void generateUUID()
public int getDataPackageLength()
public byte[] getDataPackage()
public byte[] getDataPackage(byte[] data,
                    int offset)
public static ChannelData getDataFromPackage(XByteBuffer xbuf)
xbuf - byte[]public static ChannelData getDataFromPackage(byte[] b)
public boolean equals(Object o)
public ChannelData clone()
clone in interface ChannelMessageclone in class Objectpublic Object deepclone()
deepclone in interface ChannelMessagepublic static boolean sendAckSync(int options)
options - int - the options for the messageChannel.SEND_OPTIONS_USE_ACK, 
Channel.SEND_OPTIONS_SYNCHRONIZED_ACKpublic static boolean sendAckAsync(int options)
options - int - the options for the messageChannel.SEND_OPTIONS_USE_ACK, 
Channel.SEND_OPTIONS_SYNCHRONIZED_ACKpublic static String bToS(byte[] data)
Copyright © 2000-2020 Apache Software Foundation. All Rights Reserved.