com::pcbsys::nirvana::nAdminAPI::nDataGroupNode Class Reference

This class is an Admin API wrapper for a Data Group object (nDataGroup) More...

#include <nDataGroupNode.h>

Inheritance diagram for com::pcbsys::nirvana::nAdminAPI::nDataGroupNode:
com::pcbsys::nirvana::nAdminAPI::nContainer com::pcbsys::nirvana::nAdminAPI::nNode

Public Member Functions

void addListener (nDataGroupListener *listener)
 Add an nDataGroup listener to this node. More...
 
float getConsumedRate ()
 The number of events consumed per second. More...
 
nDataGroupgetDataGroup ()
 Get the client API nDataGroup object represented by this node. More...
 
float getFanoutTime ()
 The total number of milliseconds it takes to fanout each event to all consumers. More...
 
longlong getLastEID ()
 Returns the last EID that was used for the data group. More...
 
float getPublishRate ()
 The number of events published per second. More...
 
longlong getStreamCount ()
 Returns the current number of streams that are connected to this data group. More...
 
longlong getTotalConsumed ()
 Returns the total number of events that this data group and nested groups have delivered to listeners. More...
 
longlong getTotalPublished ()
 Returns the total number of events published to this data group and nested groups since the realm has started. More...
 
longlong getTotalStreamCount ()
 Returns the total number of streams that have been connected to this data group. More...
 
virtual int getType ()
 Returns the type of this object, for internal use only. More...
 
void removeListener (nDataGroupListener *listener)
 Remove the specified listener. More...
 
- Public Member Functions inherited from com::pcbsys::nirvana::nAdminAPI::nContainer
void addACLEntries (nACL *pAcl, nNode **ppNodes=NULL, int numNode=0)
 Adds an acl to the list of nodes. More...
 
virtual void addACLEntry (nACLEntry *pEntry, bool bAllChannels=true, bool bAllQueues=true, bool bAllServices=true)
 Adds a specific acl entry to all known nodes within the nContainer node. More...
 
virtual void closed (nRealmNode *pNode)
 Called when a realm node is closed, for internal use only. More...
 
virtual nNodefindNode (std::string name)
 Given a name of the form /container/container/name this function will locate the name object and return it, or null if that object can not be found. More...
 
virtual nNodefindNode (nNode *pNode)
 Given a name of the form /container/container/name this function will locate the nNode object and return it, or null if that can not be found. More...
 
virtual nNodefindNode (nNode *pNode, bool searchChildren)
 Given a name of the form /container/container/name this function will locate the name object and return it, or null if that can not be found. More...
 
virtual nNodegetNextSibling (int idx=0)
 In findnode we were calling getNextSibling and occassionally hitting an nDataStreamNode. More...
 
virtual fSortedList
< std::string, nNode * > & 
getNodes ()
 Returns an fSortedList of all the nodes under this container. More...
 
virtual nRealmNodegetRealmAt (std::string name)
 Given a mount point this function will return a realm if one exists at the specified mount point. More...
 
virtual int getTotalNodes ()
 Returns the total number of nodes within this container and all subsequent children by traversing the entire structure beneath this container node. More...
 
virtual bool hasRealmAt (std::string name)
 Given a mount point this function will determine if this container contains a mounted realm at the specified mount point. More...
 
void modACLEntries (nACL *pAcl, nNode **ppNodes=NULL, int numNode=0)
 Modifies an existing acl for the list of nodes. More...
 
virtual void modACLEntry (nACLEntry *pEntry, bool bAllChannels=true, bool bAllQueues=true, bool bAllServices=true)
 modifies a specific acl entry's permissions for all known nodes within the nContainer node. More...
 
void removeACLEntries (nACL *pAcl, nNode **ppNodes=NULL, int numNode=0)
 Removes the contents of an acl list from the list of nodes. More...
 
virtual void removeACLEntry (nACLEntry *pEntry, bool bAllChannels=true, bool bAllQueues=true, bool bAllServices=true)
 removes a specific acl entry from all known nodes within the nContainer node. More...
 
virtual void setACL (nACL *pAcl, bool allChannels=true, bool allQueues=true, bool allServices=true)
 Changes the entire ACL entries for the selected nodes with the new ACL passed in. More...
 
- Public Member Functions inherited from com::pcbsys::nirvana::nAdminAPI::nNode
virtual BitArray * convertLong (longlong priv)
 Converts from a long to a bitArray used to specify ACL properties. More...
 
virtual nACLEntrycreateACLEntry (const std::string &subject, BitArray *pBs)
 Adds a specific acl entry to the leaf node acl. More...
 
virtual nACLEntrycreateACLEntry (nSecurityGroup *grp, BitArray *pBs)
 Adds a specific security group to the leaf node acl. More...
 
virtual bool Equals (nNode *pItem)
 Check if this nNode is the same as the nNode passed in. More...
 
virtual bool Equals (const std::string &item)
 Check if the string passed in matches the name of this nNode. More...
 
virtual const std::string & getAbsolutePath ()
 This function walks the tree to the root to generate a fully qualified name for this node. More...
 
const std::string & getInternalName ()
 Returns the name of this nNode. More...
 
const std::string & getName ()
 Returns the name of the node. More...
 
virtual nNodegetParent ()
 Returns this nodes parent node. More...
 
virtual std::string getRelativePath (nNode *pTop)
 This method returns the relative path from this node to the nNode passed. More...
 
virtual bool IsRemovable ()
 Returns true if this nNode can be removed. More...
 

Detailed Description

This class is an Admin API wrapper for a Data Group object (nDataGroup)

See Also
nDataGroup

Member Function Documentation

void com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::addListener ( nDataGroupListener listener)

Add an nDataGroup listener to this node.

This allows multiple listeners to be added to an instance of the nDataGroup object this node represents

Parameters
listenerthe nDataGroupListener to receive callbacks when streams or other groups are added/removed from this group
See Also
com.pcbsys.nirvana.client.nDataGroupListener
float com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::getConsumedRate ( )

The number of events consumed per second.

Returns
float value the rate at which messages are being consumed
nDataGroup* com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::getDataGroup ( )

Get the client API nDataGroup object represented by this node.

Returns
the nDataGroup object
float com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::getFanoutTime ( )

The total number of milliseconds it takes to fanout each event to all consumers.

Returns
long the fanout time in milliseconds
longlong com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::getLastEID ( )

Returns the last EID that was used for the data group.

Returns
long the last event id used
float com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::getPublishRate ( )

The number of events published per second.

Returns
int event publish rate
longlong com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::getStreamCount ( )

Returns the current number of streams that are connected to this data group.

Returns
long total number of streams
longlong com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::getTotalConsumed ( )

Returns the total number of events that this data group and nested groups have delivered to listeners.

Returns
long total number of events consumed
longlong com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::getTotalPublished ( )

Returns the total number of events published to this data group and nested groups since the realm has started.

Returns
long total number of events written
longlong com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::getTotalStreamCount ( )

Returns the total number of streams that have been connected to this data group.

Returns
long total number of streams
virtual int com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::getType ( )
virtual

Returns the type of this object, for internal use only.

Returns
the type of the object

Reimplemented from com::pcbsys::nirvana::nAdminAPI::nContainer.

void com::pcbsys::nirvana::nAdminAPI::nDataGroupNode::removeListener ( nDataGroupListener listener)

Remove the specified listener.

Parameters
listenerthe nDataGroupListener to receive callbacks when streams or other groups are added/removed from this group
See Also
com.pcbsys.nirvana.client.nDataGroupListener