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-2021 Apache Software Foundation. All Rights Reserved.