Universal Messaging 10.11 | Administration Guide | Universal Messaging Administration API | Namespace Objects | nDurableNode
 
nDurableNode
Before you use the administration objects associated with the namespace of a realm, you should understand:
*The concept of the Universal Messaging Namespace, as discussed in the nRealmNode guide (see nRealmNode).
*The publish/subscribe and message queue functions of Universal Messaging.
*The concept of the nRealmNode and how to create it.
*The concept of the nTopicNode and how to access it from the namespace of a realm.
nDurableNode
nDurableNode represents the status of a durable object in a Universal Messaging namespace.
When a durable node is created, it is added to the tree structure of the nRealmNode as an nDurableNode. Universal Messaging adds the nDurableNode automatically, and will send notifications to indicate that the namespace structure has changed so that the application handles the changes. For more details about managing the structure, see the "Management Information" section in this guide.
To access the durable nodes associated with a channel/topic, you can use one of the methods in the following code snippets to search the namespace for:
*the name of a specific durable node
*the list of the durable nodes associated with the topic
*the iterator of the durable nodes associated with a channel/topic
Example: Find a durable node associated with the topic node based on the name of that durable node.
Java:
nDurableNode durableNode = topicNode.getDurable(durable_name);
Example: List the durable nodes associated with the topic node.
Java:
List<nDurableNode> durableNodeList = topicNode.getDurableList()
Example: Get the iterator of durable nodes associated with the topic node and then use it to iterate through the durable nodes.
Java:
Iterator<nDurableNode> iterator = topicNode.getDurables()
The nDurableNode class determines the durable characteristics using APIs, such as isSerial(), isShared(), and isClusterWide(). Status information of the durable object, such as lastReadTime, lastWriteTime, depth, is updated periodically by the server. To configure the time interval, use the StatusBroadcast realm configuration property. The default is 5 seconds.
Before fetching the durableNode from topicNode, set the application to wait for durables to get updated in the namespace using nRealmNode# waitForDurableInformation(). To determine whether the durableNode status is updated by the server for the first time, use nDurableNode# isStatusInitialised(). true indicates that the durable node receives the first update from the server.
For more information on administering nDurableNode APIs, see the API documentation.