com.pcbsys.nirvana.nAdminAPI.nContainer Class Reference

This represents a node within the Nirvana Realm namespace which contains other nodes, such as a directory or another Realm. More...

Inheritance diagram for com.pcbsys.nirvana.nAdminAPI.nContainer:
com.pcbsys.nirvana.nAdminAPI.nNode com.pcbsys.nirvana.client.Observable com.pcbsys.nirvana.nAdminAPI.nClusterNode com.pcbsys.nirvana.nAdminAPI.nDataGroupNode com.pcbsys.nirvana.nAdminAPI.nDataGroupsContainer com.pcbsys.nirvana.nAdminAPI.nLinkNode com.pcbsys.nirvana.nAdminAPI.nRealmNode

Public Member Functions

void addACLEntries (nACL acl)
 Adds a list of acl entry to all known nodes within the nContainer node. More...
 
void addACLEntries (nACL acl, nNode[] nodes)
 Adds a list acl entry to all nodes contained with in the array of nNodes More...
 
virtual void addACLEntry (nACLEntry entry)
 Adds a specific acl entry to all known nodes within the nContainer node. More...
 
virtual void addACLEntry (nACLEntry entry, bool allChannels, bool allQueues, bool allServices)
 Adds a specific acl entry to all known nodes within the nContainer node. More...
 
virtual void closed (nRealmNode node)
 Called when the nRealmNode is closed, for internal use only. More...
 
virtual nNode findNode (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 node)
 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 node, 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...
 
nNode getNextSibling ()
 Method to return the next sibling from this node's parent More...
 
virtual nNode getNextSibling (int idx)
 Returns the sibling at position idx from this nodes parent. More...
 
virtual
System.Collections.IEnumerator 
getNodes ()
 Returns an IEnumerator of all the nodes under this container. More...
 
virtual nRealmNode getRealmAt (string name)
 Given a mount point this function will return a realm if one exists at the specified mount point More...
 
nRealmNode getRealmNode ()
 Get method for the realm node which acts as a container for this object More...
 
virtual int getSize ()
 Returns the number of nodes under this container. 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 (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 acl)
 Modifies a list of acl entry to all known nodes within the nContainer node. More...
 
void modACLEntries (nACL acl, nNode[] nodes)
 Modifies a list of acl entry to all nodes contained with in the array of nNodes More...
 
virtual void modACLEntry (nACLEntry entry)
 modifies a specific acl entry's permissions for all known nodes within the nContainer node. More...
 
virtual void modACLEntry (nACLEntry entry, bool allChannels, bool allQueues, bool allServices)
 modifies a specific acl entry's permissions for all known nodes within the nContainer node. More...
 
void removeACLEntries (nACL acl)
 Removes a list of acl entries from all known nodes within the nContainer node. More...
 
void removeACLEntries (nACL acl, nNode[] nodes)
 Removes a list of acl entries from all nodes contained with in the array of nNodes More...
 
virtual void removeACLEntry (nACLEntry entry)
 removes a specific acl entry from all known nodes within the nContainer node. More...
 
virtual void removeACLEntry (nACLEntry entry, bool allChannels, bool allQueues, bool allServices)
 removes a specific acl entry from all known nodes within the nContainer node. More...
 
virtual void setACL (nACL acl)
 Replaces the existing ACL with the nACL supplied to all known nodes within the nContainer node. More...
 
virtual void setACL (nACL acl, bool allChannels, bool allQueues, bool allServices)
 Replaces the existing ACL with the nACL supplied to all known nodes within the nContainer node. More...
 
- Public Member Functions inherited from com.pcbsys.nirvana.nAdminAPI.nNode
bool Equals (long aLong)
 Needed as part of the SortedObject interface. More...
 
override bool Equals (object item)
 Compares this object with the passed object More...
 
virtual string getAbsolutePath ()
 This function walks the tree to the root to generate a fully qualified name for this node More...
 
virtual nNode getParent ()
 Returns this nodes parent node. More...
 
virtual string getRelativePath (nNode top)
 This method returns the relative path from this node to the nNode passed. More...
 
virtual bool lessThan (long aLong)
 Needed as part of the SortedObject interface. More...
 
virtual bool lessThan (object item)
 Compares this object with the passed object. More...
 
- Public Member Functions inherited from com.pcbsys.nirvana.client.Observable
void addObserver (IObserver o)
 Adds an observer to the set of observers for this object, provided that it is not the same as some observer already in the set. More...
 
int countObservers ()
 Returns the number of observers of this Observable object. More...
 
void deleteObserver (IObserver o)
 Deletes an observer from the set of observers of this object. More...
 
void deleteObservers ()
 Clears the observer list so that this object no longer has any observers. More...
 
bool hasChanged ()
 Tests if this object has changed. More...
 
void notifyObservers ()
 If this object has changed, as indicated by the hasChanged method, then notify all of its observers and then call the clearChanged method to indicate that this object has no longer changed. More...
 
void notifyObservers (Object arg)
 If this object has changed, as indicated by the More...
 
 Observable ()
 Construct an Observable with zero Observers. More...
 

Additional Inherited Members

- Protected Member Functions inherited from com.pcbsys.nirvana.client.Observable
void clearChanged ()
 Indicates that this object has no longer changed, or that it has already notified all of its observers of its most recent change, so that the hasChanged method will now return false. More...
 
void setChanged ()
 Marks this Observable object as having been changed; the hasChanged method will now return true. More...
 
- Properties inherited from com.pcbsys.nirvana.nAdminAPI.nNode
virtual string Name [get]
 Returns the generic name of this node within the namespace More...
 

Detailed Description

This represents a node within the Nirvana Realm namespace which contains other nodes, such as a directory or another Realm.

nContainer performs no functions other than containing the other nodes and being a placeholder in the namespace.

Member Function Documentation

void com.pcbsys.nirvana.nAdminAPI.nContainer.addACLEntries ( nACL  acl)

Adds a list of acl entry to all known nodes within the nContainer node.

Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
nAdminIllegalArgumentExceptionIf the supplied arguments are not valid
void com.pcbsys.nirvana.nAdminAPI.nContainer.addACLEntries ( nACL  acl,
nNode[]  nodes 
)

Adds a list acl entry to all nodes contained with in the array of nNodes

Parameters
aclAn nACL entry containing the subject and permissions to apply to all nodes under the container
nodesAn array of nNodes which will have this list of acl entries applied to. This list can contain nContainer nodes, nLeafNodes and nServiceNodes
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
nAdminIllegalArgumentExceptionIf the supplied arguments are not valid
virtual void com.pcbsys.nirvana.nAdminAPI.nContainer.addACLEntry ( nACLEntry  entry)
virtual

Adds a specific acl entry to all known nodes within the nContainer node.

Parameters
entryAn nACL entry containing the subject and permissions to apply to all nodes under the container
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
virtual void com.pcbsys.nirvana.nAdminAPI.nContainer.addACLEntry ( nACLEntry  entry,
bool  allChannels,
bool  allQueues,
bool  allServices 
)
virtual

Adds a specific acl entry to all known nodes within the nContainer node.

Parameters
entryAn nACL entry containing the subject and permissions to apply to all nodes under the container
allChannelsif set then all channels within the container will have the acl applied
allQueuesif set then all queues within the container will have the acl applied
allServicesif set then all services within the container will have the acl applied
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
virtual void com.pcbsys.nirvana.nAdminAPI.nContainer.closed ( nRealmNode  node)
virtual

Called when the nRealmNode is closed, for internal use only.

Parameters
nodeThe nRealmNode which has been closed

Reimplemented in com.pcbsys.nirvana.nAdminAPI.nClusterNode, and com.pcbsys.nirvana.nAdminAPI.nLinkNode.

virtual nNode com.pcbsys.nirvana.nAdminAPI.nContainer.findNode ( string  name)
virtual

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.

Parameters
namethe name of the node to locate as a String
Returns
a nNode which could be a nRealmNode, nLeafNode or a nContainer
Exceptions
nAdminIllegalArgumentExceptionthrown if null is passed as the nNode

nRealmNode nLeafNode nContainer

Reimplemented in com.pcbsys.nirvana.nAdminAPI.nRealmNode.

virtual nNode com.pcbsys.nirvana.nAdminAPI.nContainer.findNode ( nNode  node)
virtual

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.

This function applies to the part of the namespace relative to the current node. Currently wildcards are NOT supported.

Parameters
nodethe nNode to be located
Returns
a nNode which could be a nRealmNode, nLeafNode or a nContainer
Exceptions
nAdminIllegalArgumentExceptionthrown if null is passed as the nNode

nRealmNode nLeafNode nContainer

virtual nNode com.pcbsys.nirvana.nAdminAPI.nContainer.findNode ( nNode  node,
bool  searchChildren 
)
virtual

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.

The searchChildren flag specifies whether the search should be performed on the current container only or children containers too respectively. This function applies to the part of the namespace relative to the current node. Currently wildcards are NOT supported.

Parameters
nodethe nNode to be located
searchChildrenspecifies whether to traverse lower levels of the tree or not
Returns
a nNode which could be a nRealmNode, nLeafNode or a nContainer
Exceptions
nAdminIllegalArgumentExceptionthrown if null is passed as the nNode

nRealmNode nLeafNode nContainer

nNode com.pcbsys.nirvana.nAdminAPI.nContainer.getNextSibling ( )

Method to return the next sibling from this node's parent

Returns the next sibling node from this node's parent.

Returns
a nNode which could be a nRealmNode, nLeafNode or a nContainer or null if there is no parent set or the current node is the last sibling.

nRealmNode nLeafNode nContainer

virtual nNode com.pcbsys.nirvana.nAdminAPI.nContainer.getNextSibling ( int  idx)
virtual

Returns the sibling at position idx from this nodes parent.

Parameters
idxpositive int for the index of the sibling to return
Returns
a nNode which corresponds to the sibling of this node at the specified index. If there is no sibling at this index, this method will return null
virtual System.Collections.IEnumerator com.pcbsys.nirvana.nAdminAPI.nContainer.getNodes ( )
virtual

Returns an IEnumerator of all the nodes under this container.

These could be other nContainer nodes, nLeafNode or nRealmNode objects.

Returns
An IEnumerator of nNode objects under this container

nRealmNode nLeafNode nContainer

virtual nRealmNode com.pcbsys.nirvana.nAdminAPI.nContainer.getRealmAt ( string  name)
virtual

Given a mount point this function will return a realm if one exists at the specified mount point

Parameters
namethe mount point as a string as a String
Returns
nRealmNode if containier contains realm at that mount point, else null
Exceptions
nAdminIllegalArgumentExceptionthrown if null is passed as the nNode
nRealmNode com.pcbsys.nirvana.nAdminAPI.nContainer.getRealmNode ( )

Get method for the realm node which acts as a container for this object

Returns
an nRealmNode object, which is the parent of, or has a parent relationship in the node tree to this object. If this object is a nRealmNode, it will return itself. If this object has no parent object which is a realm node, it will return null.
virtual int com.pcbsys.nirvana.nAdminAPI.nContainer.getSize ( )
virtual

Returns the number of nodes under this container.

Returns
an int specifying the number of nodes under this container.
virtual int com.pcbsys.nirvana.nAdminAPI.nContainer.getTotalNodes ( )
virtual

Returns the total number of nodes within this container and all subsequent children by traversing the entire structure beneath this container node

Returns
the total number of nodes counted beneath this container and it's children
virtual bool com.pcbsys.nirvana.nAdminAPI.nContainer.hasRealmAt ( string  name)
virtual

Given a mount point this function will determine if this container contains a mounted realm at the specified mount point

Parameters
namethe mount point as a string as a String
Returns
true if containier contains realm at that mount point
Exceptions
nAdminIllegalArgumentExceptionthrown if null is passed as the nNode
void com.pcbsys.nirvana.nAdminAPI.nContainer.modACLEntries ( nACL  acl)

Modifies a list of acl entry to all known nodes within the nContainer node.

Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
nAdminIllegalArgumentExceptionIf the supplied arguments are not valid
void com.pcbsys.nirvana.nAdminAPI.nContainer.modACLEntries ( nACL  acl,
nNode[]  nodes 
)

Modifies a list of acl entry to all nodes contained with in the array of nNodes

Parameters
aclAn nACL entry containing the subject and permissions to apply to all nodes int the list
nodesAn array of nNodes which will have this list of acl entries applied to. This list can contain nContainer nodes, nLeafNodes and nServiceNodes
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
nAdminIllegalArgumentExceptionIf the supplied arguments are not valid
virtual void com.pcbsys.nirvana.nAdminAPI.nContainer.modACLEntry ( nACLEntry  entry)
virtual

modifies a specific acl entry's permissions for all known nodes within the nContainer node.

Parameters
entryAn nACL entry containing the subject and permissions to apply to all nodes under the container
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
virtual void com.pcbsys.nirvana.nAdminAPI.nContainer.modACLEntry ( nACLEntry  entry,
bool  allChannels,
bool  allQueues,
bool  allServices 
)
virtual

modifies a specific acl entry's permissions for all known nodes within the nContainer node.

Parameters
entryAn nACL entry containing the subject and permissions to apply to all nodes under the container
allChannelsif set then all channels within the container will have the acl modified
allQueuesif set then all queues within the container will have the acl modified
allServicesif set then all services within the container will have the acl modified
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
void com.pcbsys.nirvana.nAdminAPI.nContainer.removeACLEntries ( nACL  acl)

Removes a list of acl entries from all known nodes within the nContainer node.

Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
nAdminIllegalArgumentExceptionIf the supplied arguments are not valid
void com.pcbsys.nirvana.nAdminAPI.nContainer.removeACLEntries ( nACL  acl,
nNode[]  nodes 
)

Removes a list of acl entries from all nodes contained with in the array of nNodes

Parameters
aclAn nACL entry containing the subject and permissions to apply to all nodes under the container
nodesAn array of nNodes which will have this list of acl entries applied to. This list can contain nContainer nodes, nLeafNodes and nServiceNodes
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
nAdminIllegalArgumentExceptionIf the supplied arguments are not valid
virtual void com.pcbsys.nirvana.nAdminAPI.nContainer.removeACLEntry ( nACLEntry  entry)
virtual

removes a specific acl entry from all known nodes within the nContainer node.

Parameters
entryAn nACL entry containing the subject and permissions to apply to all nodes under the container
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
virtual void com.pcbsys.nirvana.nAdminAPI.nContainer.removeACLEntry ( nACLEntry  entry,
bool  allChannels,
bool  allQueues,
bool  allServices 
)
virtual

removes a specific acl entry from all known nodes within the nContainer node.

Parameters
entryAn nACL entry containing the subject and permissions to apply to all nodes under the container
allChannelsif set then all channels within the container will have the acl removed
allQueuesif set then all queues within the container will have the acl removed
allServicesif set then all services within the container will have the acl removed
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
virtual void com.pcbsys.nirvana.nAdminAPI.nContainer.setACL ( nACL  acl)
virtual

Replaces the existing ACL with the nACL supplied to all known nodes within the nContainer node.

Parameters
aclAn nACL containing the nAclEntry objects that will be applied to all nodes under the container
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information
virtual void com.pcbsys.nirvana.nAdminAPI.nContainer.setACL ( nACL  acl,
bool  allChannels,
bool  allQueues,
bool  allServices 
)
virtual

Replaces the existing ACL with the nACL supplied to all known nodes within the nContainer node.

Parameters
aclAn nACL containing the nAclEntry objects that will be applied to all nodes under the container
allChannelsif set then all channels within the container will have the acl added
allQueuesif set then all queues within the container will have the acl added
allServicesif set then all services within the container will have the acl added
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permissioned to perform this operation
nNodeExceptionif the ACLs being set are invalid
nBaseAdminExceptionif unable to perform the operation, check the message for further information