Since the Nirvana namespace can contain multiple links to Nirvana Realm servers at different parts of the namespace, including namespace loops, this node represents a RealmServer which has been mounted elsewhere in the namespace. More...
#include <nLinkNode.h>
Public Member Functions | |
virtual void | closed (nRealmNode *pNode) |
Called when a realm node is closed, for internal use only. More... | |
virtual nRealmNode * | getRealmNode () |
Returns the actual nRealmNode to the application. More... | |
virtual int | getType () |
Returns the type of this object, for internal use only. More... | |
virtual bool | IsRemovable () |
Returns true if the node is removable. More... | |
nLinkNode (nRealmNode *pNode, nNode *pParent, const std::string &mntPnt) | |
Construct a new nLinkNode. More... | |
virtual void | remove (bool removeChildren) |
This method enables the removal of the object from the namespace, in this case an nRealmNode from the namespace. 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) |
Adds a specific acl entry to all known nodes within the nContainer node. More... | |
virtual nNode * | findNode (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 nNode * | findNode (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 nNode * | findNode (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 nNode * | getNextSibling (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 nRealmNode * | getRealmAt (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) |
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) |
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 nACLEntry * | createACLEntry (const std::string &subject, BitArray *pBs) |
Adds a specific acl entry to the leaf node acl. More... | |
virtual nACLEntry * | createACLEntry (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 nNode * | getParent () |
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... | |
Since the Nirvana namespace can contain multiple links to Nirvana Realm servers at different parts of the namespace, including namespace loops, this node represents a RealmServer which has been mounted elsewhere in the namespace.
It is basically a placeholder within the namespace and can be used by the application to stop looping through the namespace and to render the node differently or perhaps display a link between this node and the other nRealmNode.
com::pcbsys::nirvana::nAdminAPI::nLinkNode::nLinkNode | ( | nRealmNode * | pNode, |
nNode * | pParent, | ||
const std::string & | mntPnt | ||
) |
Construct a new nLinkNode.
*pNode | the actual realm node to be added |
*pParent | the parent of this node |
mntPnt | the mount point for this node |
|
virtual |
Called when a realm node is closed, for internal use only.
*pNode | the node which has been closed |
Reimplemented from com::pcbsys::nirvana::nAdminAPI::nContainer.
|
virtual |
Returns the actual nRealmNode to the application.
|
virtual |
Returns the type of this object, for internal use only.
Reimplemented from com::pcbsys::nirvana::nAdminAPI::nContainer.
|
virtual |
Returns true if the node is removable.
Reimplemented from com::pcbsys::nirvana::nAdminAPI::nNode.
|
virtual |
This method enables the removal of the object from the namespace, in this case an nRealmNode from the namespace.
If you specify true, all child nodes, including channels, queues and services will also be removed from the realm before removing it from its parent
removeChildren | a boolean specifying whether siblings should be removed too |
nUnsupportedRemoveException | thrown if remove is not supported (e.g. on the namespace root Realm) |
nNodeException | is thrown if an error occurs in the remove operation |
Implements com::pcbsys::nirvana::nAdminAPI::nRemovable.