- com
- pcbsys
- nirvana
- nAdminAPI
- nRealmNode
This class represents a Realm within the Nirvana namespace. More...
#include <nRealmNode.h>
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 nACLEntry * | createACLEntry (const std::string &subject, BitArray *pBs) |
This method creates an ACL entry. More... | |
nLeafNode * | createChannel (nChannelAttributes *pAttr, longlong initialEID, nACL *pInitialACL) |
Creates a new channel on the realm this session is connected. More... | |
virtual nLeafNode * | createChannel (nChannelAttributes *pAttr) |
Creates a new channel on the realm this session is connected. More... | |
virtual nLeafNode * | createChannel (nChannelAttributes *pAttr, longlong initialEID) |
Creates a new channel on the realm this session is connected. More... | |
virtual nLeafNode * | createChannel (nChannelAttributes *pAttr, longlong initialEID, nACL *pInitialACL, nLeafNode *pDead) |
Creates a new channel on the realm this session is connected. More... | |
virtual nLeafNode * | createChannel (nChannelAttributes *pAttr, longlong initialEID, nLeafNode *pDead) |
Creates a new channel on the realm this session is connected. More... | |
virtual nLeafNode * | createChannel (nChannelAttributes *pAttr, nLeafNode *pDead) |
Creates a new channel on the realm this session is connected. More... | |
nLeafNode * | createQueue (nChannelAttributes *pAttr, nACL *pInitialACL) |
Creates a new queue on the realm this session is connected. More... | |
virtual nLeafNode * | createQueue (nChannelAttributes *pAttr) |
Creates a new queue on the realm this session is connected. More... | |
virtual nLeafNode * | createQueue (nChannelAttributes *pAttr, nACL *pInitialACL, nLeafNode *pDead) |
Creates a new queue on the realm this session is connected. More... | |
virtual nLeafNode * | createQueue (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 nConfigGroup * | findConfigGroup (const std::string &groupName) |
Finds a configuration group by the name specified by the String argument. More... | |
virtual nNode * | findDatagroup (const std::string &name) |
Finds the datagroup with the same name as the one specified in the current realm node. More... | |
virtual nNode * | findNode (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... | |
nNode * | 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. 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... | |
std::list< fAclGroup * > * | getACLGroups () |
Retrieves the current realms ACL so that the user can add/remove/modify the entries within. More... | |
virtual nACL * | getACLs () |
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 nClusterNode * | getCluster () |
Return the cluster node if one exists, i.e. More... | |
virtual nConfigGroup * | getConfigGroup (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... | |
nDataGroupListener * | getDataGroupListener () |
Get the default data group listener. More... | |
nDataGroupsContainer * | getDataGroups () |
Get all the DataGroups that have been created. More... | |
nDataGroupNode * | getDefaultDataGroup () |
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 nInterfaceManager * | getInterfaceManager () |
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 nRealm * | getRealm () |
Returns the nRealm object for this nRealmNode. More... | |
virtual std::list< nRealmNode * > * | getRealmList () |
Method to return a list of nRealmNode*. 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 nSession * | getSession () |
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... | |
![]() | |
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 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 * | 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, 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... | |
![]() | |
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 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... | |
Static Public Member Functions | |
static nACL * | createACL () |
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... | |
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.
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.
*pAttr | nSessionAttributes representing the realm you wish to communicate with |
username | Username to use to login to the server |
nBaseAdminException | If 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.
*pAttr | nSessionAttributes representing the realm you wish to communicate with |
*pParent | the parent nNode of this Node |
nBaseAdminException | If the user is not authorised for admin functions |
|
virtual |
This will register the nAuditListener for all audit events from this realm.
pListener | The listener object to call when new log events happen |
|
virtual |
This will register the nAuditListener for all audit events from this realm.
pListener | The listener object to call when new log events happen |
replay | specify true to replay the entire audit contents |
|
virtual |
Add a closeListener for this nRealmNode.
nPkgCloseListener | the close listener to attach to this RealmNode |
|
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.
*pListener | The instance of the nConnectionListener to be called when connections are made or disconnected |
nBaseAdminException | if the user is not permitted to access these lists, check the message for further information |
|
virtual |
Registers a nConnectionListener to each nLeaNode of the nRealmNode.
pListener | The instance of the nConnectionListener to be called when connections are made or disconnected |
nBaseAdminException | if the user is not permitted to access these lists, check the message for further information |
|
virtual |
Registers a nConnectionListener to each nServiceNode of the nRealmNode.
pListener | The instance of the nConnectionListener to be called when connections are made or disconnected |
nBaseAdminException | if the user is not permitted to access these lists, check the message for further information |
|
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.
*pListener | The listener object to call when new log events happen |
|
virtual |
This will register the nLogListener for all Access events from the plugin manager.
pListener | The listener object to call when new log events happen |
|
virtual |
This will register the nLogListener for all error events from the plugin manager.
pListener | The 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.
*pEntry | An nACL entry containing the subject and permissions to add to the realm acl |
nInsufficientPrivilegesException | If the user is not permitted to perform this operation |
nNodeException | if the ACLs being set are invalid |
nBaseAdminException | if 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.
*pEntry | An nACL entry containing the subject and permissions to add to the realm acl |
nInsufficientPrivilegesException | If the user is not permitted to perform this operation |
nNodeException | if the ACLs being set are invalid |
nBaseAdminException | if unable to perform the operation, check the message for further information |
|
virtual |
This will cause the realm server to close the current status file, delete it and recreate the file using the attributes specified.
age | the ttl which will be assigned as default to each nirvana status event stored into the status channel file |
capacity | set the maximum number of status events to store within the channel |
type | change the type of the status channel (default is mixed) |
nBaseAdminException | If the user is not authorized for this function, check the message for further information |
|
virtual |
This will cause the realm server to close the current transaction file, delete it and recreate the file using the attributes specified.
age | the ttl which will be assigned as default to each nirvana transaction |
capacity | set the maximum number of transactions to store within the channel |
type | change the type of the transaction channel (default is mixed) |
nBaseAdminException | If the user is not authorized for this function, check the message for further information |
|
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.
pChangedGroup | The nConfigGroup containing the changed nConfigEntry |
nConfigurationException | If the user is not authorized for this function, Check the message for more information |
|
static |
|
virtual |
This method creates an ACL entry.
subject | the subject to create the ACL for |
*pBs | the BitArray representing the ACL settings to use. |
Exception | If 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.
*pAttr | The 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 |
initialEID | The value to start the event id at |
*pInitialACL | The initial ACLs to apply to the channel at creation time |
nUnknownRemoteRealmException | The remote realm responded with an unknown exception |
nSecurityException | User is not authorised for the function |
nChannelAlreadyExistsException | The channel already exists |
nSessionNotConnectedException | Current session is not connected |
nUnexpectedResponseException | Internal Error has occurred, since we received a response from the server out of sequence |
nRequestTimedOutException | The server has not responded to the request in the timeout period |
nIllegalArgumentException | Illegal parameter, check the message for more information |
nSessionPausedException | The session is currently paused, please resume |
|
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.
pAttr | The channel attributes object containing the parameters for the new channel to be created |
nUnknownRemoteRealmException | The remote node responded with an unknown exception |
nSecurityException | User is not authorised for the function |
nChannelAlreadyExistsException | The requested channel already exists |
nSessionNotConnectedException | Current session is not connected |
nUnexpectedResponseException | Internal Error has occured, since we received a response from the server out of sequence |
nRequestTimedOutException | The server has not responded to the request in the timeout period |
nIllegalArgumentException | Illegal parameter, check the message for more information |
nSessionPausedException | The session is currently paused, please resume |
|
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.
pAttr | The 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 |
initialEID | The value to start the event id at |
nUnknownRemoteRealmException | The remote realm responded with an unknown exception |
nSecurityException | User is not authorised for the function |
nChannelAlreadyExistsException | The channel already exists |
nSessionNotConnectedException | Current session is not connected |
nUnexpectedResponseException | Internal Error has occured, since we received a response from the server out of sequence |
nRequestTimedOutException | The server has not responded to the request in the timeout period |
nIllegalArgumentException | Illegal parameter, check the message for more information |
nSessionPausedException | The session is currently paused, please resume |
|
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.
pAttr | The 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 |
initialEID | The value to start the event id at |
pInitialACL | The initial ACLs to apply to the channel at creation time |
pDead | The dead event store that will contain all purged, aged and dead events |
nUnknownRemoteRealmException | The remote realm responded with an unknown exception |
nSecurityException | User is not authorised for the function |
nChannelAlreadyExistsException | The channel already exists |
nSessionNotConnectedException | Current session is not connected |
nUnexpectedResponseException | Internal Error has occured, since we received a response from the server out of sequence |
nRequestTimedOutException | The server has not responded to the request in the timeout period |
nIllegalArgumentException | Illegal parameter, check the message for more information |
nSessionPausedException | The session is currently paused, please resume |
|
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.
pAttr | The 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 |
initialEID | The value to start the event id at |
pDead | The dead event store that will contain all purged, aged and dead events |
nUnknownRemoteRealmException | The remote realm responded with an unknown exception |
nSecurityException | User is not authorised for the function |
nChannelAlreadyExistsException | The channel already exists |
nSessionNotConnectedException | Current session is not connected |
nUnexpectedResponseException | Internal Error has occured, since we received a response from the server out of sequence |
nRequestTimedOutException | The server has not responded to the request in the timeout period |
nIllegalArgumentException | Illegal parameter, check the message for more information |
nSessionPausedException | The session is currently paused, please resume |
|
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.
pAttr | The 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 |
pDead | The dead event store that will contain all purged, aged and dead events |
nUnknownRemoteRealmException | The remote realm responded with an unknown exception |
nSecurityException | User is not authorised for the function |
nChannelAlreadyExistsException | The channel already exists |
nSessionNotConnectedException | Current session is not connected |
nUnexpectedResponseException | Internal Error has occured, since we received a response from the server out of sequence |
nRequestTimedOutException | The server has not responded to the request in the timeout period |
nIllegalArgumentException | Illegal parameter, check the message for more information |
nSessionPausedException | The 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.
*pAttr | The queue attributes object containing the parameters for the new queue to be created |
*pInitialACL | The initial ACLs to apply to the queue at creation time |
nUnknownRemoteRealmException | The remote realm responded with an unknown exception |
nSecurityException | User is not authorised for the function |
nChannelAlreadyExistsException | The channel already exists |
nSessionNotConnectedException | Current session is not connected |
nUnexpectedResponseException | Internal Error has occurred, since we received a response from the server out of sequence |
nRequestTimedOutException | The server has not responded to the request in the timeout period |
nIllegalArgumentException | Illegal parameter, check the message for more information |
nSessionPausedException | The session is currently paused, please resume |
|
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.
pAttr | The queue attributes object containing the parameters for the new queue to be created |
nUnknownRemoteRealmException | The remote realm responded with an unknown exception |
nSecurityException | User is not authorised for the function |
nChannelAlreadyExistsException | The channel already exists |
nSessionNotConnectedException | Current session is not connected |
nUnexpectedResponseException | Internal Error has occured, since we received a response from the server out of sequence |
nRequestTimedOutException | The server has not responded to the request in the timeout period |
nIllegalArgumentException | Illegal parameter, check the message for more information |
nSessionPausedException | The session is currently paused, please resume |
|
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.
pAttr | The queue attributes object containing the parameters for the new queue to be created |
pInitialACL | The initial ACLs to apply to the queue at creation time |
pDead | The dead event store that will contain all purged, aged and dead events |
nUnknownRemoteRealmException | The remote realm responded with an unknown exception |
nSecurityException | User is not authorised for the function |
nChannelAlreadyExistsException | The channel already exists |
nSessionNotConnectedException | Current session is not connected |
nUnexpectedResponseException | Internal Error has occured, since we received a response from the server out of sequence |
nRequestTimedOutException | The server has not responded to the request in the timeout period |
nIllegalArgumentException | Illegal parameter, check the message for more information |
nSessionPausedException | The session is currently paused, please resume |
|
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.
pAttr | The queue attributes object containing the parameters for the new queue to be created |
pDead | The dead event store that will contain all purged, aged and dead events |
nUnknownRemoteRealmException | The remote realm responded with an unknown exception |
nSecurityException | User is not authorised for the function |
nChannelAlreadyExistsException | The channel already exists |
nSessionNotConnectedException | Current session is not connected |
nUnexpectedResponseException | Internal Error has occured, since we received a response from the server out of sequence |
nRequestTimedOutException | The server has not responded to the request in the timeout period |
nIllegalArgumentException | Illegal parameter, check the message for more information |
nSessionPausedException | The session is currently paused, please resume |
|
virtual |
This will remove the audit listener from receiving future audit events.
pListener | The listener object to remove |
|
virtual |
Remove a closeListener for this nRealmNode.
nPkgCloseListener | the close listener to remove from this RealmNode |
|
virtual |
Removes the registered listener from the realm so no further callbacks are made to the listener.
pListener | The listener object to remove |
nBaseAdminException | if the user is not permitted to access these lists |
|
virtual |
Removes the specified channel/queue from the server.
pNode | LeafNode to delete |
nUnknownRemoteRealmException | if the path to the realm has been lost |
nSecurityException | If the current user has no authority to delete the resource |
nChannelNotFoundException | The channel/queue has already been deleted |
nSessionNotConnectedException | The current session is not currently connected |
nUnexpectedResponseException | The request resulted in an unknown response from the server |
nRequestTimedOutException | The request exceeded the specified time out period |
nIllegalArgumentException | The argument supplied is invalid |
nSessionPausedException | The session is currently paused, please resume |
|
virtual |
This will remove the log listener from receiving future log events.
*pListener | The listener object to remove |
|
virtual |
This will remove the log listener from receiving future log events.
pListener | The listener object to remove |
|
virtual |
This will remove the log listener from receiving future log events.
pListener | The listener object to remove |
|
virtual |
Finds a configuration group by the name specified by the String argument.
groupName | Name of the config group to find |
|
virtual |
Finds the datagroup with the same name as the one specified in the current realm node.
name | String name of the datagroup to find |
|
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.
name | the name of the node to locate as a String |
nAdminIllegalArgumentException | thrown if null is passed as the nNode |
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.
name | the name of the node to locate as a String |
flag | bool flag indicating if we wait for the server to update our state or not |
nAdminIllegalArgumentException | thrown if null is passed as the nNode |
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.
pNode | the nNode to be located |
nAdminIllegalArgumentException | thrown if null is passed as the nNode |
Reimplemented from com::pcbsys::nirvana::nAdminAPI::nContainer.
|
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.
pNode | the nNode to be located |
searchChildren | specifies whether to traverse lower levels of the tree or not |
nAdminIllegalArgumentException | thrown if null is passed as the nNode |
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.
nBaseAdminException | if the user is not permitted to access these lists, check the message for more information |
|
virtual |
Retrieves the current realms ACL so that the user can add/remove/modify the entries within.
This nACL contains nRealmACLEntry objects.
nBaseAdminException | if the user is not permitted to access these lists, check the message for more information |
|
static |
Return whether realm node will receive asynchronous updates from the server.
|
virtual |
Number of data buffers created within the realms and for use within event fanout.
|
virtual |
Number of data buffers reused by the event fanout.
|
virtual |
Return the cluster node if one exists, i.e.
if this realm is part of a cluster
|
virtual |
Returns the nConfigGroup specified by the name.
name | the name of the config group to locate |
|
virtual |
Returns an fSortedList containing nConfigGroup objects and their names.
|
virtual |
Returns the number of connections on this realm.
nDataGroupListener* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getDataGroupListener | ( | ) |
Get the default data group listener.
nDataGroupsContainer* com::pcbsys::nirvana::nAdminAPI::nRealmNode::getDataGroups | ( | ) |
Get all the DataGroups that have been created.
longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getFanoutBacklog | ( | ) |
Returns the number of events waiting to be processed by the fanout engine.
|
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.
|
virtual |
Returns the Realms Interface Manager.
|
virtual |
Return the total number of scheduled tasks currently running within the realm.
|
virtual |
Returns the Realms Multicast Manager.
|
virtual |
Return the number of channels within the realm.
|
virtual |
Return the number of queues within the realm.
|
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.
|
virtual |
Number of threads currently queued ready to execute tasks.
|
virtual |
Returns the nRealm object for this nRealmNode.
|
virtual |
Method to return a list of nRealmNode*.
|
virtual |
Return the number of reused threads within the realm.
|
virtual |
Get the Security Group Manager for this Realm.
|
virtual |
Returns the last status update date that the server sent.
|
virtual |
Method to return a list of all p2p service nodes (nServiceNode) from this realm.
|
virtual |
Returns the nSession object for this nRealmNode.
|
virtual |
Returns the Date that the realm server was started.
|
virtual |
Return a list<nThreadPool*>* that represent the different thread pools deployed within the realm.
|
virtual |
Total number of connections served by this realm from the time it started.
longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getTotalGCCount | ( | ) |
Return the total number of GCs that the JVM has performed since the realm has started.
longlong com::pcbsys::nirvana::nAdminAPI::nRealmNode::getTotalGCTime | ( | ) |
Returns the total time in milliseconds that the JVM jas spent doing GCs.
|
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.
|
virtual |
Returns the total number of events published on this realm from the time it has started.
|
virtual |
Returns the total number of events that this realm has sent to clients from the time it started.
|
virtual |
Returns the type of this object, for internal use only.
Reimplemented from com::pcbsys::nirvana::nAdminAPI::nContainer.
|
virtual |
Returns the update interval for status updates.
|
virtual |
Get the total number of threads that have been allocated threads within the realm.
|
virtual |
Checks if there is a connection listener object associated with the realm.
|
virtual |
If the realm is running within an application then this will be set to true.
|
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
bool com::pcbsys::nirvana::nAdminAPI::nRealmNode::isClustered | ( | ) |
Returns the current cluster membership state of this realm.
|
virtual |
This method returns true if the connection to the remote realm is still valid.
|
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
|
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.
|
virtual |
This method returns true 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.
*pEntry | An nACL entry containing the subject and permissions to modify in the realm node |
nInsufficientPrivilegesException | If the user is not permitted to perform this operation |
nNodeException | if the ACLs being set are invalid |
nBaseAdminException | if 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.
*pEntry | An nACL entry containing the subject and permissions to modify in the realm node |
nInsufficientPrivilegesException | If the user is not permitted to perform this operation |
nNodeException | if the ACLs being set are invalid |
nBaseAdminException | if unable to perform the operation, check the message for further information |
|
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 bool 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.
|
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.
connectionId | The connectionId to disconnect |
sendRedirection | Tells the server to send a Server Redirection event to this client |
nBaseAdminException | If 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.
*pEntry | An nACL entry containing the subject and permissions to remove from the realm acl |
nInsufficientPrivilegesException | If the user is not permitted to perform this operation |
nNodeException | if the ACLs being set are invalid |
nBaseAdminException | if 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.
*pEntry | An nACL entry containing the subject and permissions to remove from the realm acl |
nInsufficientPrivilegesException | If the user is not permitted to perform this operation |
nNodeException | if the ACLs being set are invalid |
nBaseAdminException | if unable to perform the operation, check the message for further information |
|
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.
nBaseAdminException | If the user is not authorized for this function, check the message for further information |
|
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.
*pAcl | A nACL containing nRealmACLEntry |
nInsufficientPrivilegesException | If the user is not permitted to perform this operation |
nNodeException | If the ACLs being set are invalid |
nBaseAdminException | If unable to successfully perform this operation, check the message for more information |
|
static |
Flag indicating whether the realm node will receive asynchronous updates from the server.
flag | inidcating whether asynchronous updates will be received |
|
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.
timeout | milliseconds to wait for the namespace to be discovered |
Exception | if unable to complete the namespace within the time specified |
|
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.
timeout | milliseconds to wait for the namespace to be discovered |
Exception | If the name space is not completed with in the time specified |