The Consumer class supports dequeuing of Messages and controls the dequeuing options.
Table 13-14 Enumerated Values Used by Consumer Class
| Attribute | Options |
|---|---|
DequeMode |
|
Navigation |
|
Visibility |
|
DequeWaitOption |
|
Table 13-15 Summary of Consumer Methods
| Method | Description |
|---|---|
|
|
|
|
Retrieves the name of the |
|
|
Retrieves she correlation id of the message that is to be dequeued. |
|
|
Retrieves the dequeue mode of the |
|
|
Retrieves the id of the message that is dequeued. |
|
|
Gets the name of the queue used by the consumer. |
|
|
Retrieves the position of the Message that is dequeued. |
|
|
Retrieves the transformation applied before a |
|
|
Retrieves the transactional behavior of the dequeue operation. |
|
|
Retrieves the specified behavior of the |
|
|
Tests whether the |
|
|
Assignment operator for the |
|
|
Receives and dequeues a |
|
|
Sets the |
|
|
Sets the |
|
|
Specifies the correlation identifier of the message to be dequeued. |
|
|
Specifies the locking behavior associated with dequeuing. |
|
|
Specifies the identifier of the |
|
|
Nullifies the |
|
|
Specifies position of the |
|
|
Specifies the name of a queue before dequeuing |
|
|
Specifies transformation applied before dequeuing a |
|
|
Specifies if |
|
|
Specifies wait conditions if there are no |
Consumer class constructor.
| Syntax | Description |
|---|---|
Consumer( const Connection *conn); |
Creates a new Consumer object with the specified Connection handle. |
Consumer( const Connection *conn const Agent& agent); |
Creates a new Consumer object with specified Connection and properties of the specified Agent. |
Consumer( const Connection *conn, const string& queue); |
Creates a new Consumer object with specified Connection and queue. |
Consumer( const Consumer& consumer); |
Copy constructor. |
| Parameter | Description |
|---|---|
conn |
The connection in which the Consumer is created. |
agent |
Agent assigned to the Consumer. |
queue |
Queue at which the Consumer retrieves messages. |
consumer |
Original Consumer object. |
Retrieves the name of the Consumer.
string getConsumerName() const;
Retrieves she correlation id of the message that is to be dequeued
string geCorrelationId() const;
Retrieves the dequeue mode of the Consumer. DequeueMode is defined in Table 13-14.
DequeueMode getDequeueMode() const;
Retrieves the id of the message that is dequeued.
Bytes getMessageToDequeue() const;
Retrieves the position, or navigation, of the message that is dequeued. Navigation is defined in Table 13-14.
Navigation getPositionOfMessage() const;
Gets the name of the queue used by the consumer.
string getQueueName() const;
Retrieves the transformation applied before a Message is dequeued.
string getTransformation() const;
Retrieves the transactional behavior of the dequeue operation, or visibility. Visibility is defined in Table 13-14.
Visibility getVisibility() const;
Retrieves the specified behavior of the Consumer when waiting for a Message with matching search criteria. DequeWaitOption is defined in Table 13-14.
DequeWaitOption getWaitTime() const;
Tests whether the Consumer object is NULL. If the Consumer object is NULL, TRUE is returned; otherwise, FALSE is returned.
bool isNull() const;
Assignment operator for Consumer class.
void operator=( const Consumer& consumer);
| Parameter | Description |
|---|---|
consumer |
The original Consumer. |
Receives and dequeues a Message.
Message receive( Message::PayloadType pType, const string& type="", const string& schema="");
| Parameter | Description |
|---|---|
pType |
The type of payload expected. Payload Type is defined in Table 13-14. |
type |
The type of the payload when type is OBJECT. |
schema |
The schema in which the type is defined when pType is OBJECT. |
Sets the Agent's name and address (queue name) on the consumer.
void setAgent( const Agent& agent);
| Parameter | Description |
|---|---|
agent |
Name of the Agent. |
Sets the Consumer name. Only messages with matching consumer name can be accessed. If a queue is not set up for multiple consumer, this option should be set to NULL.
void setConsumerName( const string& name);
| Parameter | Description |
|---|---|
name |
Name of the Consumer. |
Specifies the correlation identifier of the message to be dequeued. Special pattern matching characters, such as the percent sign (%) and the underscore(_) can be used. If several messages satisfy the pattern, the order of dequeuing is undetermined.
void setCorrelationId const string& id);
| Parameter | Description |
|---|---|
id |
The identifier of the Message. |
Specifies the locking behavior associated with dequeuing.
void setDequeueMode( DequeueMode mode);
| Parameter | Description |
|---|---|
mode |
Behavior of enqueuing. DequeMode is defined in Table 13-14. |
Specifies the identifier of the Message to be dequeued.
void setMessageIdToDequeue( const Bytes& msgid);
| Parameter | Description |
|---|---|
msgid |
Identifier of the Message to be dequeued. |
Nullifies the Consumer; frees the memory associated with this object.
void setNull();
Specifies position of the Message to be retrieved.
void setPositionOfMessage( Navigation pos);
| Parameter | Description |
|---|---|
pos |
Position of the message, Navigation, is defined in Table 13-14. |
Specifies the name of a queue before dequeuing Messages. Typically used when dequeuing multiple messages from the same queue.
void setQueueName( const string& queue);
| Parameter | Description |
|---|---|
queue |
The name of a valid queue in the database. |
Specifies transformation applied before dequeuing the Message.
void setTransformation( string &fName);
| Parameter | Description |
|---|---|
fName |
SQL transformation function. |
Specifies if Message should be dequeued as part of the current transaction. Visibility parameter is ignored when in DEQ_BROWSE mode.
void setVisibility( Visibility option);
| Parameter | Description |
|---|---|
option |
Visibility option being set, defined in Table 13-14. |
Specifies wait conditions if there are no Messages with matching criteria. The wait parameter is ignored if messages in the same group are being dequeued.
void setWaitTime( DequeWaitOption wait);
| Parameter | Description |
|---|---|
wait |
Waiting conditions. DequeWaitOption is defined in Table 13-14. |