com::pcbsys::nirvana::nAdminAPI::nRealmNode Class Reference

This class represents a Realm within the Nirvana namespace. More...

#include <nRealmNode.h>

Inheritance diagram for com::pcbsys::nirvana::nAdminAPI::nRealmNode:
com::pcbsys::nirvana::nAdminAPI::nContainer com::pcbsys::nirvana::nAdminAPI::nRemovable com::pcbsys::nirvana::nAdminAPI::nNode

Public Member Functions

virtual void addAuditListener (nAuditListener *pListener)
 This will register the nAuditListener for all audit events from this realm. More...
 
virtual void addAuditListener (nAuditListener *pListener, bool replay)
 This will register the nAuditListener for all audit events from this realm. More...
 
virtual void addCloseListener (nPkgCloseListener *pListener)
 Add a closeListener for this nRealmNode. More...
 
virtual void addConnectionListener (nAPIConnectionListener *pListener)
 Registers the listener object with the realm so that whenever a connection is made or lost with the realm the listener is notified of the change in state of the realm. More...
 
virtual void addConnectionListenerToAllLeafNodes (nAPIConnectionListener *pListener)
 Registers a nConnectionListener to each nLeaNode of the nRealmNode. More...
 
virtual void addConnectionListenerToAllServiceNodes (nAPIConnectionListener *pListener)
 Registers a nConnectionListener to each nServiceNode of the nRealmNode. More...
 
virtual void addLogListener (nLogListener *pListener)
 This will register the nLogListener for all log events from this realm. More...
 
virtual void addPluginAccessListener (nLogListener *pListener)
 This will register the nLogListener for all Access events from the plugin manager. More...
 
virtual void addPluginErrorListener (nLogListener *pListener)
 This will register the nLogListener for all error events from the plugin manager. More...
 
void addRealmACLEntries (nACL *pEntry)
 Adds a specific acl entry to the realm acl. More...
 
void addRealmACLEntry (nACLEntry *pEntry)
 Adds a specific acl entry to the realm acl. More...
 
virtual void changeStatusChannel (int type, long age, int capacity)
 This will cause the realm server to close the current status file, delete it and recreate the file using the attributes specified. More...
 
virtual void changeTransactionChannel (int type, long age, int capacity)
 This will cause the realm server to close the current transaction file, delete it and recreate the file using the attributes specified. More...
 
virtual void close ()
 Disconnects this realm node and closes it's session.
 
virtual void commitConfig (nConfigGroup *pChangedGroup)
 Calling this function with causes all changes within the group to be committed on the realm and activated. More...
 
virtual nACLEntrycreateACLEntry (const std::string &subject, BitArray *pBs)
 This method creates an ACL entry. More...
 
virtual nACLEntrycreateACLEntry (nSecurityGroup *grp, BitArray *bs)
 This method creates an ACL entry. More...
 
nLeafNodecreateChannel (nChannelAttributes *pAttr, longlong initialEID, nACL *pInitialACL)
 Creates a new channel on the realm this session is connected. More...
 
virtual nLeafNodecreateChannel (nChannelAttributes *pAttr)
 Creates a new channel on the realm this session is connected. More...
 
virtual nLeafNodecreateChannel (nChannelAttributes *pAttr, longlong initialEID)
 Creates a new channel on the realm this session is connected. More...
 
virtual nLeafNodecreateChannel (nChannelAttributes *pAttr, longlong initialEID, nACL *pInitialACL, nLeafNode *pDead)
 Creates a new channel on the realm this session is connected. More...
 
virtual nLeafNodecreateChannel (nChannelAttributes *pAttr, longlong initialEID, nLeafNode *pDead)
 Creates a new channel on the realm this session is connected. More...
 
virtual nLeafNodecreateChannel (nChannelAttributes *pAttr, nLeafNode *pDead)
 Creates a new channel on the realm this session is connected. More...
 
nLeafNodecreateQueue (nChannelAttributes *pAttr, nACL *pInitialACL)
 Creates a new queue on the realm this session is connected. More...
 
virtual nLeafNodecreateQueue (nChannelAttributes *pAttr)
 Creates a new queue on the realm this session is connected. More...
 
virtual nLeafNodecreateQueue (nChannelAttributes *pAttr, nACL *pInitialACL, nLeafNode *pDead)
 Creates a new queue on the realm this session is connected. More...
 
virtual nLeafNodecreateQueue (nChannelAttributes *pAttr, nLeafNode *pDead)
 Creates a new queue on the realm this session is connected. More...
 
virtual void delAuditListener (nAuditListener *pListener)
 This will remove the audit listener from receiving future audit events. More...
 
virtual void delCloseListener (nPkgCloseListener *pListener)
 Remove a closeListener for this nRealmNode. More...
 
virtual void delConnectionListener (nAPIConnectionListener *pListener)
 Removes the registered listener from the realm so no further callbacks are made to the listener. More...
 
virtual void delLeafNode (nLeafNode *pNode)
 Removes the specified channel/queue from the server. More...
 
virtual void delLogListener (nLogListener *pListener)
 This will remove the log listener from receiving future log events. More...
 
virtual void delPluginAccessListener (nLogListener *pListener)
 This will remove the log listener from receiving future log events. More...
 
virtual void delPluginErrorListener (nLogListener *pListener)
 This will remove the log listener from receiving future log events. More...
 
virtual nConfigGroupfindConfigGroup (const std::string &groupName)
 Finds a configuration group by the name specified by the String argument. More...
 
virtual nNodefindDatagroup (const std::string &name)
 Finds the datagroup with the same name as the one specified in the current realm node. More...
 
virtual nNodefindNode (const std::string &name)
 Given a name of the form /container1/container2/name this function will try to locate the name object locally and return it, or null if that object can not be found. More...
 
nNodefindNode (const std::string &name, bool flag)
 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...
 
std::list< fAclGroup * > * getACLGroups ()
 Retrieves the current realms ACL so that the user can add/remove/modify the entries within. More...
 
virtual nACLgetACLs ()
 Retrieves the current realms ACL so that the user can add/remove/modify the entries within. More...
 
virtual longlong getBuffersCreated ()
 Number of data buffers created within the realms and for use within event fanout. More...
 
virtual longlong getBuffersReused ()
 Number of data buffers reused by the event fanout. More...
 
virtual nClusterNodegetCluster ()
 Return the cluster node if one exists, i.e. More...
 
virtual nConfigGroupgetConfigGroup (const std::string &name)
 Returns the nConfigGroup specified by the name. More...
 
virtual fSortedList
< std::string, nConfigGroup * > & 
getConfigGroups ()
 Returns an fSortedList containing nConfigGroup objects and their names. More...
 
virtual int getCurrentConnections ()
 Returns the number of connections on this realm. More...
 
nDataGroupListenergetDataGroupListener ()
 Get the default data group listener. More...
 
nDataGroupsContainergetDataGroups ()
 Get all the DataGroups that have been created. More...
 
nDataGroupNodegetDefaultDataGroup ()
 Get the default data group node the default data group node.
 
longlong getFanoutBacklog ()
 Returns the number of events waiting to be processed by the fanout engine. More...
 
virtual longlong getFreeMemory ()
 Returns the amount of free memory the Realm Server has within the JVM. More...
 
virtual nInterfaceManagergetInterfaceManager ()
 Returns the Realms Interface Manager. More...
 
virtual longlong getInternalSchedulerSize ()
 Return the total number of scheduled tasks currently running within the realm. More...
 
virtual nMulticastManager * getMulticastManager ()
 Returns the Realms Multicast Manager. More...
 
virtual int getNoOfChannels ()
 Return the number of channels within the realm. More...
 
virtual int getNoOfQueues ()
 Return the number of queues within the realm. More...
 
virtual int getNoOfThreads ()
 Return the number of thread the JVM has allocated for the Realm Server. More...
 
virtual int getQueuedThreads ()
 Number of threads currently queued ready to execute tasks. More...
 
virtual nRealmgetRealm ()
 Returns the nRealm object for this nRealmNode. More...
 
virtual std::list< nRealmNode * > * getRealmList ()
 Method to return a list of nRealmNode*. More...
 
virtual nRemoteInterestManager * getRemoteInterestManager ()
 The remote interest manager is an object that allows the user to control propagation of messages between realms. More...
 
virtual int getReUsedThreads ()
 Return the number of reused threads within the realm. More...
 
virtual nSecurityGroupManager * getSecurityGroupManager ()
 Get the Security Group Manager for this Realm. More...
 
virtual time_t getServerTime ()
 Returns the last status update date that the server sent. More...
 
virtual std::list
< nServiceNode * > * 
getServicesList ()
 Method to return a list of all p2p service nodes (nServiceNode) from this realm. More...
 
virtual nSessiongetSession ()
 Returns the nSession object for this nRealmNode. More...
 
virtual time_t getStartTime ()
 Returns the Date that the realm server was started. More...
 
virtual std::list< nThreadPool * > * getThreadPoolDetails ()
 Return a list<nThreadPool*>* that represent the different thread pools deployed within the realm. More...
 
virtual longlong getTotalConnections ()
 Total number of connections served by this realm from the time it started. More...
 
longlong getTotalGCCount ()
 Return the total number of GCs that the JVM has performed since the realm has started. More...
 
longlong getTotalGCTime ()
 Returns the total time in milliseconds that the JVM jas spent doing GCs. More...
 
virtual longlong getTotalMemory ()
 Returns the total number of bytes that the JVM has allocated from the underlying OS. More...
 
virtual longlong getTotalPublished ()
 Returns the total number of events published on this realm from the time it has started. More...
 
virtual longlong getTotalSubscribed ()
 Returns the total number of events that this realm has sent to clients from the time it started. More...
 
virtual int getType ()
 Returns the type of this object, for internal use only. More...
 
virtual longlong getUpdateInterval ()
 Returns the update interval for status updates. More...
 
virtual int getVendedThreads ()
 Get the total number of threads that have been allocated threads within the realm. More...
 
virtual bool hasConnectionListener ()
 Checks if there is a connection listener object associated with the realm. More...
 
virtual bool isAnEmbeddedServer ()
 If the realm is running within an application then this will be set to true. More...
 
virtual bool isAuthorised ()
 This function returns true if the user is authorised for administration functions on the remote realm. More...
 
bool isClustered ()
 Returns the current cluster membership state of this realm. More...
 
virtual bool isConnected ()
 This method returns true if the connection to the remote realm is still valid. More...
 
virtual bool isEntireNamespaceComplete ()
 This method returns true when the namespace discovery process is complete for the entire namespace from this node down. More...
 
virtual bool isNamespaceComplete ()
 This method returns true when the namespace discovery process is complete. More...
 
virtual bool IsRemovable ()
 This method returns true if the RealmNode is removable. More...
 
void modRealmACLEntries (nACL *pEntry)
 modifies a specific acl entry's permissions in the realm acl. More...
 
void modRealmACLEntry (nACLEntry *pEntry)
 modifies a specific acl entry's permissions in the realm acl. More...
 
 nRealmNode (nSessionAttributes *pAttr, const std::string &username="")
 Constructs a link with the realm server and builds up the realm servers namespace which can be retrieved using the getNameSpace() function. More...
 
 nRealmNode (nSessionAttributes *pAttr, nNode *pParent)
 Constructs a link with the realm server and builds up the realm servers namespace which can be retrieved using the getNameSpace() function. More...
 
virtual void releaseCachedMemory ()
 Sends a request to the Realm Server to release cached memory.
 
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...
 
virtual void removeConnection (const std::string &connectionId, bool sendRedirection=false)
 This method will cause the server to disconnect the connection described by the connection ID. More...
 
void removeRealmACLEntries (nACL *pEntry)
 removes a specific acl entry from the realm acl. More...
 
void removeRealmACLEntry (nACLEntry *pEntry)
 removes a specific acl entry from the realm acl. More...
 
virtual void requestThreadDump ()
 Sends a request to the Realm Server to produce a Thread dump.
 
virtual void rollAuditFile ()
 This will cause the realm server to close the current audit log, rename it to the current date and start a new audit log. More...
 
void rollLogFile ()
 Rolls the servers log file.
 
virtual void setACLs (nACL *pAcl)
 Commits the ACL passed in with the Realm Server. More...
 
virtual void waitForEntireNameSpace (long timeout=-1)
 This method will block the calling thread until all of the namespace has been resolved. More...
 
virtual void waitForNameSpace (long timeout=-1)
 This method will block the calling thread until the namespace discovery is complete for this node or the supplied timeout, in milliseconds, is reached. 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 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 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...
 

Static Public Member Functions

static nACLcreateACL ()
 Return a new nACL object. More...
 
static void enableAsyncUpdates (bool enable)
 Set whether to disable asynchronous updates from the realm.
 
static bool getAsyncUpdateFlag ()
 Return whether realm node will receive asynchronous updates from the server. More...
 
static void setAsyncUpdateFlag (bool flag)
 Flag indicating whether the realm node will receive asynchronous updates from the server. More...
 

Detailed Description

This class represents a Realm within the Nirvana namespace.

This object allows the user to access the current status of the RealmServer, the current configuration parameters, change the ACL entries for the realm and access to the nodes that this RealmServer manages. It extents nContainer which is a Observable via nNode, if any status parameters change then the observer is notified via the notify method.

This class also allows you to monitor connections to the realm by implementing a nConnectionListener and calling addConnectionListener with the object. Then when connections are added or deleted the callbacks will be executed with the details of the connections.

See Also
nContainer
nNode

Constructor & Destructor Documentation

com::pcbsys::nirvana::nAdminAPI::nRealmNode::nRealmNode ( nSessionAttributes pAttr,
const std::string &  username = "" 
)

Constructs a link with the realm server and builds up the realm servers namespace which can be retrieved using the getNameSpace() function.

Parameters
*pAttrnSessionAttributes representing the realm you wish to communicate with
usernameUsername to use to login to the server
Exceptions
nBaseAdminExceptionIf the user is not authorised for admin functions
com::pcbsys::nirvana::nAdminAPI::nRealmNode::nRealmNode ( nSessionAttributes pAttr,
nNode pParent 
)

Constructs a link with the realm server and builds up the realm servers namespace which can be retrieved using the getNameSpace() function.

Parameters
*pAttrnSessionAttributes representing the realm you wish to communicate with
*pParentthe parent nNode of this Node
Exceptions
nBaseAdminExceptionIf the user is not authorised for admin functions

Member Function Documentation

virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::addAuditListener ( nAuditListener pListener)
virtual

This will register the nAuditListener for all audit events from this realm.

Parameters
pListenerThe listener object to call when new log events happen
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::addAuditListener ( nAuditListener pListener,
bool  replay 
)
virtual

This will register the nAuditListener for all audit events from this realm.

Parameters
pListenerThe listener object to call when new log events happen
replayspecify true to replay the entire audit contents
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::addCloseListener ( nPkgCloseListener *  pListener)
virtual

Add a closeListener for this nRealmNode.

Parameters
nPkgCloseListenerthe close listener to attach to this RealmNode
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::addConnectionListener ( nAPIConnectionListener pListener)
virtual

Registers the listener object with the realm so that whenever a connection is made or lost with the realm the listener is notified of the change in state of the realm.

Currently only one listener per session is supported.

Parameters
*pListenerThe instance of the nConnectionListener to be called when connections are made or disconnected
Exceptions
nBaseAdminExceptionif the user is not permitted to access these lists, check the message for further information
See Also
nConnectionListener
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::addConnectionListenerToAllLeafNodes ( nAPIConnectionListener pListener)
virtual

Registers a nConnectionListener to each nLeaNode of the nRealmNode.

Parameters
pListenerThe instance of the nConnectionListener to be called when connections are made or disconnected
Exceptions
nBaseAdminExceptionif the user is not permitted to access these lists, check the message for further information
See Also
nConnectionListener
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::addConnectionListenerToAllServiceNodes ( nAPIConnectionListener pListener)
virtual

Registers a nConnectionListener to each nServiceNode of the nRealmNode.

Parameters
pListenerThe instance of the nConnectionListener to be called when connections are made or disconnected
Exceptions
nBaseAdminExceptionif the user is not permitted to access these lists, check the message for further information
See Also
nConnectionListener
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::addLogListener ( nLogListener pListener)
virtual

This will register the nLogListener for all log events from this realm.

This can become quiet busy if the log level on the realm is set for verbose.

Parameters
*pListenerThe listener object to call when new log events happen
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::addPluginAccessListener ( nLogListener pListener)
virtual

This will register the nLogListener for all Access events from the plugin manager.

Parameters
pListenerThe listener object to call when new log events happen
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::addPluginErrorListener ( nLogListener pListener)
virtual

This will register the nLogListener for all error events from the plugin manager.

Parameters
pListenerThe listener object to call when new log events happen
void com::pcbsys::nirvana::nAdminAPI::nRealmNode::addRealmACLEntries ( nACL pEntry)

Adds a specific acl entry to the realm acl.

Parameters
*pEntryAn nACL entry containing the subject and permissions to add to the realm acl
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permitted 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::nRealmNode::addRealmACLEntry ( nACLEntry pEntry)

Adds a specific acl entry to the realm acl.

Parameters
*pEntryAn nACL entry containing the subject and permissions to add to the realm acl
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permitted 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::nRealmNode::changeStatusChannel ( int  type,
long  age,
int  capacity 
)
virtual

This will cause the realm server to close the current status file, delete it and recreate the file using the attributes specified.

Parameters
agethe ttl which will be assigned as default to each nirvana status event stored into the status channel file
capacityset the maximum number of status events to store within the channel
typechange the type of the status channel (default is mixed)
Exceptions
nBaseAdminExceptionIf the user is not authorized for this function, check the message for further information
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::changeTransactionChannel ( int  type,
long  age,
int  capacity 
)
virtual

This will cause the realm server to close the current transaction file, delete it and recreate the file using the attributes specified.

Parameters
agethe ttl which will be assigned as default to each nirvana transaction
capacityset the maximum number of transactions to store within the channel
typechange the type of the transaction channel (default is mixed)
Exceptions
nBaseAdminExceptionIf the user is not authorized for this function, check the message for further information
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::commitConfig ( nConfigGroup pChangedGroup)
virtual

Calling this function with causes all changes within the group to be committed on the realm and activated.

All config changes are immediate and do not require the realm server to be restarted.

Parameters
pChangedGroupThe nConfigGroup containing the changed nConfigEntry
Exceptions
nConfigurationExceptionIf the user is not authorized for this function, Check the message for more information
static nACL* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createACL ( )
static

Return a new nACL object.

Returns
a new nACL object
virtual nACLEntry* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createACLEntry ( const std::string &  subject,
BitArray *  pBs 
)
virtual

This method creates an ACL entry.

Parameters
subjectthe subject to create the ACL for
*pBsthe BitArray representing the ACL settings to use.
Exceptions
ExceptionIf the name space is not completed with in the time specified

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

virtual nACLEntry* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createACLEntry ( nSecurityGroup grp,
BitArray *  bs 
)
virtual

This method creates an ACL entry.

Parameters
grpthe security group to create the ACL for
*pBsthe BitArray representing the ACL settings to use.
Exceptions
ExceptionIf the name space is not completed with in the time specified

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

nLeafNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createChannel ( nChannelAttributes pAttr,
longlong  initialEID,
nACL pInitialACL 
)

Creates a new channel on the realm this session is connected.

If the channel attributes specify a realm different than the one this session is connected to, a transparent redirection will occur and the channel will be created on that realm.

Parameters
*pAttrThe channel attributes object containing the parameters for the new channel to be created @ param initialEID The channel will be created with the first eid being set to this value by default it is set to 0 but the user can set it to any positive value
initialEIDThe value to start the event id at
*pInitialACLThe initial ACLs to apply to the channel at creation time
Returns
an nChannel object representing the newly created nirvana channel
Exceptions
nUnknownRemoteRealmExceptionThe remote realm responded with an unknown exception
nSecurityExceptionUser is not authorised for the function
nChannelAlreadyExistsExceptionThe channel already exists
nSessionNotConnectedExceptionCurrent session is not connected
nUnexpectedResponseExceptionInternal Error has occurred, since we received a response from the server out of sequence
nRequestTimedOutExceptionThe server has not responded to the request in the timeout period
nIllegalArgumentExceptionIllegal parameter, check the message for more information
nSessionPausedExceptionThe session is currently paused, please resume
virtual nLeafNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createChannel ( nChannelAttributes pAttr)
virtual

Creates a new channel on the realm this session is connected.

If the channel attributes specify a realm different than the one this session is connected to, a transparent redirection will occur and the channel will be created on that realm.

Parameters
pAttrThe channel attributes object containing the parameters for the new channel to be created
Returns
an nChannel object representing the newly created nirvana channel
Exceptions
nUnknownRemoteRealmExceptionThe remote node responded with an unknown exception
nSecurityExceptionUser is not authorised for the function
nChannelAlreadyExistsExceptionThe requested channel already exists
nSessionNotConnectedExceptionCurrent session is not connected
nUnexpectedResponseExceptionInternal Error has occured, since we received a response from the server out of sequence
nRequestTimedOutExceptionThe server has not responded to the request in the timeout period
nIllegalArgumentExceptionIllegal parameter, check the message for more information
nSessionPausedExceptionThe session is currently paused, please resume
virtual nLeafNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createChannel ( nChannelAttributes pAttr,
longlong  initialEID 
)
virtual

Creates a new channel on the realm this session is connected.

If the channel attributes specify a realm different than the one this session is connected to, a transparent redirection will occur and the channel will be created on that realm.

Parameters
pAttrThe channel attributes object containing the parameters for the new channel to be created @ param initialEID The channel will be created with the first eid being set to this value by default it is set to 0 but the user can set it to any positive value
initialEIDThe value to start the event id at
Returns
an nChannel object representing the newly created nirvana channel
Exceptions
nUnknownRemoteRealmExceptionThe remote realm responded with an unknown exception
nSecurityExceptionUser is not authorised for the function
nChannelAlreadyExistsExceptionThe channel already exists
nSessionNotConnectedExceptionCurrent session is not connected
nUnexpectedResponseExceptionInternal Error has occured, since we received a response from the server out of sequence
nRequestTimedOutExceptionThe server has not responded to the request in the timeout period
nIllegalArgumentExceptionIllegal parameter, check the message for more information
nSessionPausedExceptionThe session is currently paused, please resume
virtual nLeafNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createChannel ( nChannelAttributes pAttr,
longlong  initialEID,
nACL pInitialACL,
nLeafNode pDead 
)
virtual

Creates a new channel on the realm this session is connected.

If the channel attributes specify a realm different than the one this session is connected to, a transparent redirection will occur and the channel will be created on that realm.

Parameters
pAttrThe channel attributes object containing the parameters for the new channel to be created @ param initialEID The channel will be created with the first eid being set to this value by default it is set to 0 but the user can set it to any positive value
initialEIDThe value to start the event id at
pInitialACLThe initial ACLs to apply to the channel at creation time
pDeadThe dead event store that will contain all purged, aged and dead events
Returns
an nChannel object representing the newly created nirvana channel
Exceptions
nUnknownRemoteRealmExceptionThe remote realm responded with an unknown exception
nSecurityExceptionUser is not authorised for the function
nChannelAlreadyExistsExceptionThe channel already exists
nSessionNotConnectedExceptionCurrent session is not connected
nUnexpectedResponseExceptionInternal Error has occured, since we received a response from the server out of sequence
nRequestTimedOutExceptionThe server has not responded to the request in the timeout period
nIllegalArgumentExceptionIllegal parameter, check the message for more information
nSessionPausedExceptionThe session is currently paused, please resume
virtual nLeafNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createChannel ( nChannelAttributes pAttr,
longlong  initialEID,
nLeafNode pDead 
)
virtual

Creates a new channel on the realm this session is connected.

If the channel attributes specify a realm different than the one this session is connected to, a transparent redirection will occur and the channel will be created on that realm.

Parameters
pAttrThe channel attributes object containing the parameters for the new channel to be created @ param initialEID The channel will be created with the first eid being set to this value by default it is set to 0 but the user can set it to any positive value
initialEIDThe value to start the event id at
pDeadThe dead event store that will contain all purged, aged and dead events
Returns
an nChannel object representing the newly created nirvana channel
Exceptions
nUnknownRemoteRealmExceptionThe remote realm responded with an unknown exception
nSecurityExceptionUser is not authorised for the function
nChannelAlreadyExistsExceptionThe channel already exists
nSessionNotConnectedExceptionCurrent session is not connected
nUnexpectedResponseExceptionInternal Error has occured, since we received a response from the server out of sequence
nRequestTimedOutExceptionThe server has not responded to the request in the timeout period
nIllegalArgumentExceptionIllegal parameter, check the message for more information
nSessionPausedExceptionThe session is currently paused, please resume
virtual nLeafNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createChannel ( nChannelAttributes pAttr,
nLeafNode pDead 
)
virtual

Creates a new channel on the realm this session is connected.

If the channel attributes specify a realm different than the one this session is connected to, a transparent redirection will occur and the channel will be created on that realm.

Parameters
pAttrThe channel attributes object containing the parameters for the new channel to be created @ param initialEID The channel will be created with the first eid being set to this value by default it is set to 0 but the user can set it to any positive value
pDeadThe dead event store that will contain all purged, aged and dead events
Returns
an nChannel object representing the newly created nirvana channel
Exceptions
nUnknownRemoteRealmExceptionThe remote realm responded with an unknown exception
nSecurityExceptionUser is not authorised for the function
nChannelAlreadyExistsExceptionThe channel already exists
nSessionNotConnectedExceptionCurrent session is not connected
nUnexpectedResponseExceptionInternal Error has occured, since we received a response from the server out of sequence
nRequestTimedOutExceptionThe server has not responded to the request in the timeout period
nIllegalArgumentExceptionIllegal parameter, check the message for more information
nSessionPausedExceptionThe session is currently paused, please resume
nLeafNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createQueue ( nChannelAttributes pAttr,
nACL pInitialACL 
)

Creates a new queue on the realm this session is connected.

If the queue attributes specify a realm different than the one this session is connected to, a transparent redirection will occur and the queue will be created on that realm.

Parameters
*pAttrThe queue attributes object containing the parameters for the new queue to be created
*pInitialACLThe initial ACLs to apply to the queue at creation time
Returns
an nLeafNode object representing the newly created nirvana queue
Exceptions
nUnknownRemoteRealmExceptionThe remote realm responded with an unknown exception
nSecurityExceptionUser is not authorised for the function
nChannelAlreadyExistsExceptionThe channel already exists
nSessionNotConnectedExceptionCurrent session is not connected
nUnexpectedResponseExceptionInternal Error has occurred, since we received a response from the server out of sequence
nRequestTimedOutExceptionThe server has not responded to the request in the timeout period
nIllegalArgumentExceptionIllegal parameter, check the message for more information
nSessionPausedExceptionThe session is currently paused, please resume
virtual nLeafNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createQueue ( nChannelAttributes pAttr)
virtual

Creates a new queue on the realm this session is connected.

If the queue attributes specify a realm different than the one this session is connected to, a transparent redirection will occur and the queue will be created on that realm.

Parameters
pAttrThe queue attributes object containing the parameters for the new queue to be created
Returns
an nLeafNode object representing the newly created nirvana queue
Exceptions
nUnknownRemoteRealmExceptionThe remote realm responded with an unknown exception
nSecurityExceptionUser is not authorised for the function
nChannelAlreadyExistsExceptionThe channel already exists
nSessionNotConnectedExceptionCurrent session is not connected
nUnexpectedResponseExceptionInternal Error has occured, since we received a response from the server out of sequence
nRequestTimedOutExceptionThe server has not responded to the request in the timeout period
nIllegalArgumentExceptionIllegal parameter, check the message for more information
nSessionPausedExceptionThe session is currently paused, please resume
virtual nLeafNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createQueue ( nChannelAttributes pAttr,
nACL pInitialACL,
nLeafNode pDead 
)
virtual

Creates a new queue on the realm this session is connected.

If the queue attributes specify a realm different than the one this session is connected to, a transparent redirection will occur and the queue will be created on that realm.

Parameters
pAttrThe queue attributes object containing the parameters for the new queue to be created
pInitialACLThe initial ACLs to apply to the queue at creation time
pDeadThe dead event store that will contain all purged, aged and dead events
Returns
an nLeafNode object representing the newly created nirvana queue
Exceptions
nUnknownRemoteRealmExceptionThe remote realm responded with an unknown exception
nSecurityExceptionUser is not authorised for the function
nChannelAlreadyExistsExceptionThe channel already exists
nSessionNotConnectedExceptionCurrent session is not connected
nUnexpectedResponseExceptionInternal Error has occured, since we received a response from the server out of sequence
nRequestTimedOutExceptionThe server has not responded to the request in the timeout period
nIllegalArgumentExceptionIllegal parameter, check the message for more information
nSessionPausedExceptionThe session is currently paused, please resume
virtual nLeafNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::createQueue ( nChannelAttributes pAttr,
nLeafNode pDead 
)
virtual

Creates a new queue on the realm this session is connected.

If the queue attributes specify a realm different than the one this session is connected to, a transparent redirection will occur and the queue will be created on that realm.

Parameters
pAttrThe queue attributes object containing the parameters for the new queue to be created
pDeadThe dead event store that will contain all purged, aged and dead events
Returns
an nLeafNode object representing the newly created nirvana queue
Exceptions
nUnknownRemoteRealmExceptionThe remote realm responded with an unknown exception
nSecurityExceptionUser is not authorised for the function
nChannelAlreadyExistsExceptionThe channel already exists
nSessionNotConnectedExceptionCurrent session is not connected
nUnexpectedResponseExceptionInternal Error has occured, since we received a response from the server out of sequence
nRequestTimedOutExceptionThe server has not responded to the request in the timeout period
nIllegalArgumentExceptionIllegal parameter, check the message for more information
nSessionPausedExceptionThe session is currently paused, please resume
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::delAuditListener ( nAuditListener pListener)
virtual

This will remove the audit listener from receiving future audit events.

Parameters
pListenerThe listener object to remove
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::delCloseListener ( nPkgCloseListener *  pListener)
virtual

Remove a closeListener for this nRealmNode.

Parameters
nPkgCloseListenerthe close listener to remove from this RealmNode
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::delConnectionListener ( nAPIConnectionListener pListener)
virtual

Removes the registered listener from the realm so no further callbacks are made to the listener.

Parameters
pListenerThe listener object to remove
Exceptions
nBaseAdminExceptionif the user is not permitted to access these lists
See Also
nConnectionListener
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::delLeafNode ( nLeafNode pNode)
virtual

Removes the specified channel/queue from the server.

Parameters
pNodeLeafNode to delete
Exceptions
nUnknownRemoteRealmExceptionif the path to the realm has been lost
nSecurityExceptionIf the current user has no authority to delete the resource
nChannelNotFoundExceptionThe channel/queue has already been deleted
nSessionNotConnectedExceptionThe current session is not currently connected
nUnexpectedResponseExceptionThe request resulted in an unknown response from the server
nRequestTimedOutExceptionThe request exceeded the specified time out period
nIllegalArgumentExceptionThe argument supplied is invalid
nSessionPausedExceptionThe session is currently paused, please resume
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::delLogListener ( nLogListener pListener)
virtual

This will remove the log listener from receiving future log events.

Parameters
*pListenerThe listener object to remove
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::delPluginAccessListener ( nLogListener pListener)
virtual

This will remove the log listener from receiving future log events.

Parameters
pListenerThe listener object to remove
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::delPluginErrorListener ( nLogListener pListener)
virtual

This will remove the log listener from receiving future log events.

Parameters
pListenerThe listener object to remove
virtual nConfigGroup* com::pcbsys::nirvana::nAdminAPI::nRealmNode::findConfigGroup ( const std::string &  groupName)
virtual

Finds a configuration group by the name specified by the String argument.

Parameters
groupNameName of the config group to find
Returns
nConfigGroup object corresponding to the name or null if not found
virtual nNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::findDatagroup ( const std::string &  name)
virtual

Finds the datagroup with the same name as the one specified in the current realm node.

Parameters
nameString name of the datagroup to find
Returns
The nNode object corresponding to the found datagroup, NULL if the datagroup was not found in the realm node.
virtual nNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::findNode ( const std::string &  name)
virtual

Given a name of the form /container1/container2/name this function will try to locate the name object locally and return it, or null if that object can not be found.

This method will not wait for the server to update our local state so if a node is created in one session and this method is called immediately after in another session, the local state may not be up to date and therefore the node may not be found. Optionally you can call findNode(name,true) to force the method to wait for a maximum of 5 seconds for the local state to update.

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
See Also
nRealmNode
nLeafNode
nContainer
nNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::findNode ( const std::string &  name,
bool  flag 
)

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
flagbool flag indicating if we wait for the server to update our state or not
Returns
a nNode which could be a nRealmNode, nLeafNode or a nContainer
Exceptions
nAdminIllegalArgumentExceptionthrown if null is passed as the nNode
See Also
nRealmNode
nLeafNode
nContainer
virtual nNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::findNode ( nNode pNode)
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
pNodethe 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
See Also
nRealmNode
nLeafNode
nContainer

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

virtual nNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::findNode ( nNode pNode,
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
pNodethe 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
See Also
nRealmNode
nLeafNode
nContainer

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

std::list<fAclGroup*>* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getACLGroups ( )

Retrieves the current realms ACL so that the user can add/remove/modify the entries within.

This nACL contains nRealmACLEntry objects.

Returns
nACL containing nRealmACLEntry obejcts
Exceptions
nBaseAdminExceptionif the user is not permitted to access these lists, check the message for more information
See Also
nRealmACLEntry
virtual nACL* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getACLs ( )
virtual

Retrieves the current realms ACL so that the user can add/remove/modify the entries within.

This nACL contains nRealmACLEntry objects.

Returns
nACL containing nRealmACLEntry objects
Exceptions
nBaseAdminExceptionif the user is not permitted to access these lists, check the message for more information
See Also
nRealmACLEntry
static bool com::pcbsys::nirvana::nAdminAPI::nRealmNode::getAsyncUpdateFlag ( )
static

Return whether realm node will receive asynchronous updates from the server.

Returns
whether asynchronous updates will be received
virtual longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getBuffersCreated ( )
virtual

Number of data buffers created within the realms and for use within event fanout.

Returns
the number of buffers created
virtual longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getBuffersReused ( )
virtual

Number of data buffers reused by the event fanout.

Returns
number of reused buffers
virtual nClusterNode* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getCluster ( )
virtual

Return the cluster node if one exists, i.e.

if this realm is part of a cluster

Returns
the cluster node for this realm, otherwise null
virtual nConfigGroup* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getConfigGroup ( const std::string &  name)
virtual

Returns the nConfigGroup specified by the name.

Parameters
namethe name of the config group to locate
Returns
nConfigGroup of the specified name
virtual fSortedList<std::string, nConfigGroup*>& com::pcbsys::nirvana::nAdminAPI::nRealmNode::getConfigGroups ( )
virtual

Returns an fSortedList containing nConfigGroup objects and their names.

Returns
fSortedList of name nConfigGroup pairs
virtual int com::pcbsys::nirvana::nAdminAPI::nRealmNode::getCurrentConnections ( )
virtual

Returns the number of connections on this realm.

Returns
int number of clients connected
nDataGroupListener* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getDataGroupListener ( )

Get the default data group listener.

Returns
the data group listener
nDataGroupsContainer* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getDataGroups ( )

Get all the DataGroups that have been created.

Returns
the DataGroups that exist on the realm
longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getFanoutBacklog ( )

Returns the number of events waiting to be processed by the fanout engine.

Returns
number of events
Since
7.0
virtual longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getFreeMemory ( )
virtual

Returns the amount of free memory the Realm Server has within the JVM.

This indicates the difference between what the JVM has currently allocated and what the Realm Server has used. The JVM may increase its memory usage if the free memory falls below a set threshold depending on the JVM parameters passed during the realm server startup script.

Returns
Long value of bytes
virtual nInterfaceManager* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getInterfaceManager ( )
virtual

Returns the Realms Interface Manager.

Returns
The com.pcbsys.nirvana.nAdminAPI.nInterfaceManager object
See Also
com.pcbsys.nirvana.nAdminAPI.nInterfaceManager
virtual longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getInternalSchedulerSize ( )
virtual

Return the total number of scheduled tasks currently running within the realm.

Returns
the number of tasks within the realm
virtual nMulticastManager* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getMulticastManager ( )
virtual

Returns the Realms Multicast Manager.

Returns
The com.pcbsys.nirvana.nAdminAPI.nMulticastManager object
See Also
nMulticastManager
virtual int com::pcbsys::nirvana::nAdminAPI::nRealmNode::getNoOfChannels ( )
virtual

Return the number of channels within the realm.

Returns
Channels within the realm
virtual int com::pcbsys::nirvana::nAdminAPI::nRealmNode::getNoOfQueues ( )
virtual

Return the number of queues within the realm.

Returns
Queues within the realm
virtual int com::pcbsys::nirvana::nAdminAPI::nRealmNode::getNoOfThreads ( )
virtual

Return the number of thread the JVM has allocated for the Realm Server.

This includes all the threads used by the JVM as well.

Returns
Number of threads
virtual int com::pcbsys::nirvana::nAdminAPI::nRealmNode::getQueuedThreads ( )
virtual

Number of threads currently queued ready to execute tasks.

Returns
number of queued threads
virtual nRealm* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getRealm ( )
virtual

Returns the nRealm object for this nRealmNode.

Returns
The com.pcbsys.nirvana.client.nRealm object
See Also
com.pcbsys.nirvana.client.nRealm
virtual std::list<nRealmNode*>* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getRealmList ( )
virtual

Method to return a list of nRealmNode*.

Returns
List of pointer to all realms known by this realm
virtual nRemoteInterestManager* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getRemoteInterestManager ( )
virtual

The remote interest manager is an object that allows the user to control propagation of messages between realms.

Returns
returns the remote interest manager for the given realm node
virtual int com::pcbsys::nirvana::nAdminAPI::nRealmNode::getReUsedThreads ( )
virtual

Return the number of reused threads within the realm.

Returns
the number of reused threads within the realm
virtual nSecurityGroupManager* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getSecurityGroupManager ( )
virtual

Get the Security Group Manager for this Realm.

Returns
nSecurityGroupManager* the Security Group Manager for this Realm
virtual time_t com::pcbsys::nirvana::nAdminAPI::nRealmNode::getServerTime ( )
virtual

Returns the last status update date that the server sent.

Returns
Server Date
virtual std::list<nServiceNode*>* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getServicesList ( )
virtual

Method to return a list of all p2p service nodes (nServiceNode) from this realm.

Returns
list of nServiceNode objects representing p2p services
virtual nSession* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getSession ( )
virtual

Returns the nSession object for this nRealmNode.

Returns
The com.pcbsys.nirvana.client.nSession object
See Also
com.pcbsys.nirvana.client.nSession
virtual time_t com::pcbsys::nirvana::nAdminAPI::nRealmNode::getStartTime ( )
virtual

Returns the Date that the realm server was started.

Returns
Date of realm start
virtual std::list<nThreadPool*>* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getThreadPoolDetails ( )
virtual

Return a list<nThreadPool*>* that represent the different thread pools deployed within the realm.

Returns
Vector of nThreadPool objects
Since
4.0
virtual longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getTotalConnections ( )
virtual

Total number of connections served by this realm from the time it started.

Returns
longlong count
longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getTotalGCCount ( )

Return the total number of GCs that the JVM has performed since the realm has started.

Returns
GC count
Since
7.0
longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getTotalGCTime ( )

Returns the total time in milliseconds that the JVM jas spent doing GCs.

Returns
time in ms used by the GC
Since
7.0
virtual longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getTotalMemory ( )
virtual

Returns the total number of bytes that the JVM has allocated from the underlying OS.

This number may move depending on the Realm Server startup parameters.

Returns
longlong byte count
virtual longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getTotalPublished ( )
virtual

Returns the total number of events published on this realm from the time it has started.

Returns
lone event count
virtual longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getTotalSubscribed ( )
virtual

Returns the total number of events that this realm has sent to clients from the time it started.

Returns
Number if events sent to clients
virtual int com::pcbsys::nirvana::nAdminAPI::nRealmNode::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.

virtual longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getUpdateInterval ( )
virtual

Returns the update interval for status updates.

Returns
a long representing the number of milliseconds between each update
virtual int com::pcbsys::nirvana::nAdminAPI::nRealmNode::getVendedThreads ( )
virtual

Get the total number of threads that have been allocated threads within the realm.

Returns
the total number of threads allocated
virtual bool com::pcbsys::nirvana::nAdminAPI::nRealmNode::hasConnectionListener ( )
virtual

Checks if there is a connection listener object associated with the realm.

Returns
true if connection listener has been set
See Also
nConnectionListener
virtual bool com::pcbsys::nirvana::nAdminAPI::nRealmNode::isAnEmbeddedServer ( )
virtual

If the realm is running within an application then this will be set to true.

Returns
true if the realm is running as an embedded server
virtual bool com::pcbsys::nirvana::nAdminAPI::nRealmNode::isAuthorised ( )
virtual

This function returns true if the user is authorised for administration functions on the remote realm.

If the user is not authorised then this will return false and any functions performed against the realm will result in a nSecurityException

Returns
boolean True if the user is authorised
bool com::pcbsys::nirvana::nAdminAPI::nRealmNode::isClustered ( )

Returns the current cluster membership state of this realm.

Returns
true if the node is a member of a cluster
Since
5.1
virtual bool com::pcbsys::nirvana::nAdminAPI::nRealmNode::isConnected ( )
virtual

This method returns true if the connection to the remote realm is still valid.

Returns
bool current state
virtual bool com::pcbsys::nirvana::nAdminAPI::nRealmNode::isEntireNamespaceComplete ( )
virtual

This method returns true when the namespace discovery process is complete for the entire namespace from this node down.

Please refer to the isNamespaceComplete() function

Returns
boolean
virtual bool com::pcbsys::nirvana::nAdminAPI::nRealmNode::isNamespaceComplete ( )
virtual

This method returns true when the namespace discovery process is complete.

Since the process of walking the entire namespace is asynchronous this method is useful to find out if the namespace is complete for this Realm. If this Realm contains other Realms then you need to call this function on subsequent Realms to see if the namespace is complete for them.

Alternative, you could add a listener to this object and you will be notified when new nRealmNodes are added to this object.

Returns
boolean if the name space has been completed
virtual bool com::pcbsys::nirvana::nAdminAPI::nRealmNode::IsRemovable ( )
virtual

This method returns true if the RealmNode is removable.

Returns
bool if the RealmNode is removable

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

void com::pcbsys::nirvana::nAdminAPI::nRealmNode::modRealmACLEntries ( nACL pEntry)

modifies a specific acl entry's permissions in the realm acl.

Parameters
*pEntryAn nACL entry containing the subject and permissions to modify in the realm node
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permitted 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::nRealmNode::modRealmACLEntry ( nACLEntry pEntry)

modifies a specific acl entry's permissions in the realm acl.

Parameters
*pEntryAn nACL entry containing the subject and permissions to modify in the realm node
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permitted 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::nRealmNode::remove ( bool  removeChildren)
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

Parameters
removeChildrena bool specifying whether siblings should be removed too
Exceptions
nUnsupportedRemoveExceptionthrown if remove is not supported (e.g. on the namespace root Realm)
nNodeExceptionis thrown if an error occurs in the remove operation
See Also
nLeafNode
nLinkNode

Implements com::pcbsys::nirvana::nAdminAPI::nRemovable.

virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::removeConnection ( const std::string &  connectionId,
bool  sendRedirection = false 
)
virtual

This method will cause the server to disconnect the connection described by the connection ID.

The default behaviour of the client is to reconnect so calling this alone will basically bounce the client. If your intent is to disable the remote user, you must first disable the user from the realm and then call this function.

Parameters
connectionIdThe connectionId to disconnect
sendRedirectionTells the server to send a Server Redirection event to this client
Exceptions
nBaseAdminExceptionIf the user is not authorized for this function, check the message for further information
void com::pcbsys::nirvana::nAdminAPI::nRealmNode::removeRealmACLEntries ( nACL pEntry)

removes a specific acl entry from the realm acl.

Parameters
*pEntryAn nACL entry containing the subject and permissions to remove from the realm acl
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permitted 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::nRealmNode::removeRealmACLEntry ( nACLEntry pEntry)

removes a specific acl entry from the realm acl.

Parameters
*pEntryAn nACL entry containing the subject and permissions to remove from the realm acl
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permitted 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::nRealmNode::rollAuditFile ( )
virtual

This will cause the realm server to close the current audit log, rename it to the current date and start a new audit log.

Exceptions
nBaseAdminExceptionIf the user is not authorized for this function, check the message for further information
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::setACLs ( nACL pAcl)
virtual

Commits the ACL passed in with the Realm Server.

This causes these ACLs to be active once the function returns. The nACL object can be retrieved by calling the getACLs() function which returns the realms current list.

Parameters
*pAclA nACL containing nRealmACLEntry
Exceptions
nInsufficientPrivilegesExceptionIf the user is not permitted to perform this operation
nNodeExceptionIf the ACLs being set are invalid
nBaseAdminExceptionIf unable to successfully perform this operation, check the message for more information
static void com::pcbsys::nirvana::nAdminAPI::nRealmNode::setAsyncUpdateFlag ( bool  flag)
static

Flag indicating whether the realm node will receive asynchronous updates from the server.

Parameters
flaginidcating whether asynchronous updates will be received
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::waitForEntireNameSpace ( long  timeout = -1)
virtual

This method will block the calling thread until all of the namespace has been resolved.

This could take some time depending on the number of realms within the namespace.

Parameters
timeoutmilliseconds to wait for the namespace to be discovered
Exceptions
Exceptionif unable to complete the namespace within the time specified
virtual void com::pcbsys::nirvana::nAdminAPI::nRealmNode::waitForNameSpace ( long  timeout = -1)
virtual

This method will block the calling thread until the namespace discovery is complete for this node or the supplied timeout, in milliseconds, is reached.

If the discovery is already complete the method will return immediately.

Parameters
timeoutmilliseconds to wait for the namespace to be discovered
Exceptions
ExceptionIf the name space is not completed with in the time specified