Universal Messaging 10.11 | Developer Guide | Enterprise APIs | Enterprise Developer's Guide for C++ | Message Queues | Creating a Queue
 
Creating a Queue
In order to create a queue, first of all you must create your nSession object, which is effectively your logical and physical connection to a Universal Messaging Realm. This is achieved by using the correct RNAME for your Universal Messaging Realm when constructing the nSessionAttributes object, as shown below:
std::string[] RNAME={"nsp://127.0.0.1:9000"};
nSessionAttributes *nsa = new nSessionAttributes(RNAME);
nSession *mySession = nSessionFactory::create(nsa);
mySession->init();
Once the mySession->init() method is successfully called, your connection to the realm will be established.
Using the nSession objects instance 'mySession', we can then begin creating the queue object. Queues have an associated set of attributes, that define their behaviour within the Universal Messaging Realm Server. As well as the name of the queue, the attributes determine the availability of the events published to a queue to any consumers wishing to consume them,
To create a queue, we do the following:
nChannelAttributes *cattrib = new nChannelAttributes();
cattrib->setChannelMode(nChannelAttributes::QUEUE_MODE);
cattrib->setMaxEvents(0);
cattrib->setTTL(0);
cattrib->setType(nChannelAttributes::PERSISTENT_TYPE);
cattrib->setName(“myqueue”);
nQueue *myQueue=mySession->createQueue(cattrib);
Now we have a reference to a Universal Messaging queue within the realm.
Note:
For information about the set of permissible characters you can use to name a queue, see the section Creating Queues in the Enterprise Manager section of the Administration Guide.