A message is the unit that is enqueued dequeued. A Message object holds both its content, or payload, and its properties. This class provides methods to get and set message properties.
Table 13-25 Enumerated Values Used by Message Class
| Attribute | Options |
|---|---|
MessageState |
|
PayloadType |
|
Table 13-26 Summary of Message Methods
| Method | Summary |
|---|---|
|
|
|
|
Retrieves |
|
|
Retrieves the number of attempts made to dequeue the message. |
|
|
Retrieves |
|
|
Retrieves the identification string. |
|
|
Retrieves delay with which message was enqueued. |
|
|
Retrieves name of queue to which |
|
|
Retrieves the expiration of the message. |
|
|
Retrieves time at which message was enqueued. |
|
|
Retrieves state of the message at time of enqueuing. |
|
|
Retrieves object payload of the message. |
|
|
Retrieves the Id of the message that generated this message on the last queue. |
|
|
Retrieves the type of the payload. |
|
|
Retrieves the priority of the message. |
|
|
Retrieves the agent who send the |
|
|
Assignment operator for |
|
|
Specifies |
|
|
Specifies |
|
|
Specifies the identification string. |
|
|
Specifies the number of seconds to delay the enqueued |
|
|
Specifies the name of the queue to which the |
|
|
Specifies the duration of time that |
|
|
Sets the |
|
|
Specifies object payload of the message. |
|
|
Specifies id of last queue that generated the |
|
|
Specifies priority of the |
|
|
Specifies the list of agents for whom the message is intended. |
|
|
Specifies the sender of the |
Message class constructor.
| Syntax | Description |
|---|---|
Message(
const Environment *env);
|
Creates a Message object within the specified Environment. |
Message( const Message& mes); |
Copy constructor. |
| Parameter | Description |
|---|---|
env |
The environment of the Message. |
mes |
The original Message. |
Retrieves the number of attempts made to dequeue the message. This property cannot be retrieved while enqueuing.
int getAttemptsToDequeue() const;
Retrieves the delay (in seconds) with which the Message was enqueued.
int getDelay() const;
Retrieves the name of the queue to which the Message is moved, in cases when the Message cannot be processed successfully.
string getExceptionQueueName() const;
Retrieves the expiration time of the Message (in seconds). This is the duration for which the message is available for dequeuing.
int getExpiration() const;
Retrieves the time at which the message was enqueued, in Date format. This value is determined by the system, and cannot be set by the user.
Date getMessageEnqueuedTime() const;
Retrieves the state of the message at the time of enqueuing. This parameter cannot be set an enqueuing time. MessageState is defined in Table 13-25.
MessageState getMessageState() const;
Retrieves the original message Id. When a message is propagated from one queue to another, gets the ID to the last queue that generated this message.
Bytes getOriginalMessageId() const;
Retrieves the type of the payload, as defined for PayloadType in Table 13-25.
PayloadType getPayloadType( ) const;
Tests whether the Message object is NULL. If the Message object is NULL, then TRUE is returned; otherwise, FALSE is returned.
bool isNull() const;
Assignment operator for Message.
void operator=( const Message& mes);
| Parameter | Description |
|---|---|
mes |
Original message. |
Specifies AnyData payload of the Message.
void setAnyData( const AnyData& anydata);
| Parameter | Description |
|---|---|
anydata |
Data content of the Message. |
Specifies Bytes payload of the Message.
void setBytes( const Bytes& bytes);
| Parameter | Description |
|---|---|
bytes |
Data content of the Message. |
Specifies the identification string. This parameter is set at enqueuing time by the Producer. Messages can be dequeued with this id. The id can contain wildcard characters.
void setCorrelationId( const string& id);
| Parameter | Description |
|---|---|
id |
The id; upper limit of 128 bytes. |
Specifies the time (in seconds) to delay the enqueued Message. After the delay ends, the Message is available for dequeuing.
Note that dequeuing by msgid overrides the delay specification. A Message enqueued with delay is in the WAITING state. Delay is set by the producer of the Message.
void setDelay( int delay);
| Parameter | Description |
|---|---|
delay |
The delay. |
Specifies the name of the queue to which the Message object is moved if it cannot be processed successfully. The queue name must be valid.
Note that if the exception queue does not exist at the time of the move, the Message is moved to the default exception queue associated with the queue table; a warning is logged in the alert log.
Also note that if the default exception queue is used, the parameter returns a NULL value at enqueuing time; the attribute must refer to a valid queue name.
void setExceptionQueueName( const string& queue);
| Parameter | Description |
|---|---|
queue |
The name of the exception queue. |
Specifies the duration time (in seconds) that the Message object is available for dequeuing. A Message expires after this time.
void setExpiration( int exp);
| Parameter | Description |
|---|---|
exp |
The duration of expiration. |
Sets the Message object to NULL. Before the Connection is destroyed by the terminateConnection() call of the Environment Class, all Message objects must be set to NULL.
void setNull();
Specifies object payload of the Message.
void setObject( PObject& pobj);
| Parameter | Description |
|---|---|
pobj |
Content of the data |
Sets the Id of the last queue that generated the message, when a message is propagated from one queue to another.
void setOriginalMessageId( const Bytes& queue);
| Parameter | Description |
|---|---|
queue |
The last queue. |
Specifies the priority of the Message object. This property is set during enqueuing time, and can be negative. Default is 0.
void setPriority( int priority);
| Parameter | Description |
|---|---|
priority |
The priority of the Message. |
Specifies the list of Agents for whom the Message is intended. These recipients are not identical to subscribers of the queue. The property is set during enqueuing. All Agents in the list must be valid. The recipient list overrides the default subscriber list.
void setRecipientList( vector<Agent>& agentList);
| Parameter | Description |
|---|---|
agentList |
The list of Agents. |