This class is a Nirvana channel, offering the Nirvana channel related services. More...
#include <nChannel.h>
Public Member Functions | |
void | addConnectionListener (nChannelConnectionListener *pListener) |
Adds a nChannelConnectionListener to this channel so that when new connections are made to this channel the listener is notified. More... | |
void | addConnectionListener (nChannelConnectionListener *pListener, bool isSync) |
Adds a nChannelConnectionListener to this channel so that when new connections are made to this channel the listener is notified. More... | |
void | addSubscriber (nEventListener *pNel) |
Registers the specified nEventListener as a subscriber to this channel. More... | |
void | addSubscriber (nEventListener *pNel, longlong eid) |
Registers the specified nEventListener as a subscriber to this channel. More... | |
void | addSubscriber (nEventListener *pNel, const std::string &selector, longlong eid=-1) |
Registers the specified nEventListener as a subscriber to this channel. More... | |
void | addSubscriber (nEventListener *pNel, nNamedObject *pName) |
Registers the specified nEventListener as a named subscriber to this channel. More... | |
void | addSubscriber (nEventListener *pNel, nNamedObject *pName, const std::string &selector, bool bAutoAck) |
Registers the specified nEventListener as a named subscriber to this channel. More... | |
nChannelIterator * | createIterator (const std::string &selector, longlong startEID) |
Create a default channel iterator starting at the eid specified in the channel with the events which match the selector being returned. More... | |
nChannelIterator * | createIterator (nNamedObject *pName, const std::string &selector) |
Create a default channel iterator starting at the eid specified in the channel with the events which match the selector being returned. More... | |
nChannelIterator * | createIterator (nNamedObject *pName) |
Create a default channel iterator starting at the eid specified in the channel with the events which match the selector being returned. More... | |
nChannelIterator * | createIterator (longlong startEID) |
Create a default channel iterator starting at the EID specified. More... | |
nChannelIterator * | createIterator (const std::string &selector) |
Create a default channel iterator starting at the beginning of the channel with the events which match the selector being returned. More... | |
nChannelIterator * | createIterator () |
Create a default channel iterator starting at the beginning of the channel. More... | |
UM_DEPRECATED nNamedObject * | createNamedObject (const std::string &name, longlong startEID, bool persistent, bool clusterWide) |
Creates a named object on the channel with the given name and depending on the persistent flag informs the server to store the name and value to disk or not. More... | |
UM_DEPRECATED nNamedObject * | createNamedObject (const std::string &name, bool persistent, bool clusterWide) |
Creates a named object on the channel with the given name and depending on the persistent flag informs the server to store the name and value to disk or not. More... | |
UM_DEPRECATED nNamedObject * | createNamedObject (const std::string &name, bool persistent) |
Creates a named object on the channel with the given name and depending on the persistent flag informs the server to store the name and value to disk or not. More... | |
UM_DEPRECATED nNamedObject * | createNamedObject (const std::string &name, longlong startEID, bool persistent) |
Creates a named object on the channel with the given name and depending on the persistent flag informs the server to store the name and value to disk or not. More... | |
nNamedObject * | createNamedObject (const std::string &name, longlong startEID) |
Creates a named object on the channel with the given name. More... | |
nNamedObject * | createNamedObject (const std::string &name) |
Creates a named object on the channel with the given name. More... | |
nRegisteredEvent * | createRegisteredEvent (nObject *keyValue, bool isTransactional=false) |
Creates a new nRegisteredEvent bound to this channel using the keyValue as its unique id. More... | |
void | deleteJoin (nQueue *pDestination) |
Deletes a join between this channel and the queue referenced in the destination parameter. More... | |
void | deleteJoin (nChannel *pDestination) |
Deletes a join between this channel and the channel referenced in the destination parameter. More... | |
void | delNamedObject (const std::string &name) |
Removes all references for this name on the realm Server. More... | |
void | delNamedObject (nNamedObject *pName) |
Removes all references for this name on the realm Server. More... | |
nChannelAttributes * | getChannelAttributes () |
Gets the channels local attributes. More... | |
nJoinInformation ** | getJoinInformation (int &numJoin) |
Returns an array of nJoinInformation objects which describe the links this channel has configured for it. More... | |
longlong | getLastEID () |
Gets the last event id of this channel. More... | |
longlong | getLastStoredEID () |
Gets the last event id of this channel. More... | |
std::string | getName () |
Gets the name of this channel. More... | |
nNamedObject * | getNamedObject (const std::string &name) |
Returns an instance of the nNamedObject referenced by the parameter. More... | |
nNamedObject ** | getNamedObjects (int &numObject) |
Returns an array of all known nNamedObjects registered with this channel. More... | |
int | getType () |
Gets the type of this channel. More... | |
bool | isSubscribed () |
Determines whether the underlying channel is currently being subscribed to. More... | |
void | joinChannel (nQueue *pDest, bool isRouted, int hopCount, const std::string &selector) |
Sets a server based link between this channel and the queue defined within the provided nQueue. More... | |
void | joinChannel (nQueue *pDest) |
Sets a server based link between this channel and the queue defined within the provided nQueue. More... | |
void | joinChannel (nQueue *pDest, const std::string &selector) |
Sets a server based link between this channel and the queue defined by the *pDest parameter. More... | |
void | joinChannel (nChannel *pDest, bool isRouted, int hopCount, const std::string &selector, bool allowPurge) |
Sets a server based link between this channel and the channel defined within the provided nChannel. More... | |
void | joinChannel (nChannel *pDest, bool isRouted, int hopCount, const std::string &selector) |
Sets a server based link between this channel and the channel defined within the provided nChannel. More... | |
void | joinChannel (nChannel *pDest) |
Sets a server based link between this channel and the channel defined within the provided nChannel. More... | |
void | joinChannel (nChannel *pDest, const std::string &selector) |
Sets a server based link between this channel and the channel defined within the provided nChannel. More... | |
void | joinChannelToArchive (nQueue *pDest, const std::string &selector) |
Sets a server based link between this channel and the queue defined within the provided nQueue. More... | |
void | publish (nConsumeEvent *pEvent) |
Publishes the specified nConsumeEvent to this channel. More... | |
void | purgeEvent (longlong eidval, bool purgeJoins=false) |
Purges a single event from this channel. More... | |
void | purgeEventAsync (longlong eidval, bool purgeJoins=false) |
Purges a single event from this channel and does not wait for the response from the server. More... | |
void | purgeEvents (longlong startEID, longlong endEID, const std::string &selector="", bool purgeJoins=false) |
Purges a range of events from this channel. More... | |
void | purgeEventsAsync (longlong startEID, longlong endEID, const std::string &selector="", bool purgeJoins=false) |
Purges a range of events from this channel and does not wait for the response from the server. More... | |
void | removeConnectionListener () |
Removes the connection listener to this channel. More... | |
void | removeConnectionListener (nChannelConnectionListener *pListener) |
Removes the connection listener to this channel. More... | |
void | removeSubscriber (nEventListener *pNel) |
Unregisters the specified nEventListener as a subscriber from this channel. More... | |
void | removeSubscriber (nEventListener *pNel, bool waitForResponse) |
Unregisters the specified nEventListener as a subscriber from this channel. More... | |
void | reSubscribe (nNamedObject *pName, const std::string &selector) |
Removes the current subscriber and registers the specified nEventListener as a named subscriber to this channel. More... | |
void | reSubscribe (const std::string &selector, longlong eid=-1) |
Removes the current subscriber and re-registers the nEventListener as a subscriber to this channel. More... | |
void | reSubscribe (longlong eid) |
Removes the current subscriber and registers the specified nEventListener as a subscriber to this channel. More... | |
void | unbindNamedObject (const std::string &name) |
Unbinds the named object from the current connection. More... | |
void | unbindNamedObject (nNamedObject *pName) |
Unbinds the named object from the current connection. More... | |
![]() | |
int | getQueueSize () |
Returns the size of the underlying event queue waiting for delivery via the go method. More... | |
nSession * | getSession () |
Returns the nSession used to create/find this channel. More... | |
void | updateProtobufDefinitions (const std::vector< ProtobufDescriptor * > &descriptors) |
Update the Protocol Buffer definition for the store. More... | |
This class is a Nirvana channel, offering the Nirvana channel related services.
void com::pcbsys::nirvana::client::nChannel::addConnectionListener | ( | nChannelConnectionListener * | pListener | ) |
Adds a nChannelConnectionListener to this channel so that when new connections are made to this channel the listener is notified.
*pListener | to add |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits, or has already been set. |
nSessionPausedException | The session is currently paused, please resume |
void com::pcbsys::nirvana::client::nChannel::addConnectionListener | ( | nChannelConnectionListener * | pListener, |
bool | isSync | ||
) |
Adds a nChannelConnectionListener to this channel so that when new connections are made to this channel the listener is notified.
*pListener | to add |
isSync | the call is synchronous |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits, or has already been set. |
nSessionPausedException | The session is currently paused, please resume |
void com::pcbsys::nirvana::client::nChannel::addSubscriber | ( | nEventListener * | pNel | ) |
Registers the specified nEventListener as a subscriber to this channel.
The subscriber will receive all events contained in this channel.
*pNel | the nEventListener object to be registered as a subscriber |
nSecurityException | is thrown if the caller has unsufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nChannelAlreadySubscribedException | A subscriber is already registered with this channel on this session |
void com::pcbsys::nirvana::client::nChannel::addSubscriber | ( | nEventListener * | pNel, |
longlong | eid | ||
) |
Registers the specified nEventListener as a subscriber to this channel.
The subscriber will receive all events with event id greater than or equal to the one specified.
*pNel | the nEventListener object to be registered as a subscriber |
eid | a long specifying the subscription's start eid |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nChannelAlreadySubscribedException | A subscriber is already registered with this channel on this session |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::addSubscriber | ( | nEventListener * | pNel, |
const std::string & | selector, | ||
longlong | eid = -1 |
||
) |
Registers the specified nEventListener as a subscriber to this channel.
The subscriber will receive all events with event id greater than or equal to the one specified, apart from the ones restricted by the specified filter.
*pNel | the nEventListener object to be registered as a subscriber |
selector | a string specifying a filter to this subscription request |
eid | a long specifying the subscription's start eid |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSelectorParserException | The selector has syntax errors |
nChannelAlreadySubscribedException | A subscriber is already registered with this channel on this session |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::addSubscriber | ( | nEventListener * | pNel, |
nNamedObject * | pName | ||
) |
Registers the specified nEventListener as a named subscriber to this channel.
The subscriber will receive all events from the last acknowledged event for the name supplied If the name is new it will start from the END of the channel.
*pNel | the nEventListener object to be registered as a subscriber |
*pName | a nNamedObject specifying a name for this subscription |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSelectorParserException | The selector has syntax errors |
nChannelAlreadySubscribedException | A subscriber is already registered with this channel on this session |
nNameAlreadyBoundException | The name is already bound and used by another client |
nSessionPausedException | The session is currently paused |
nNameDoesNotExistException | if the server does not know about the named object |
void com::pcbsys::nirvana::client::nChannel::addSubscriber | ( | nEventListener * | pNel, |
nNamedObject * | pName, | ||
const std::string & | selector, | ||
bool | bAutoAck | ||
) |
Registers the specified nEventListener as a named subscriber to this channel.
The subscriber will receive all events from the last acknowledged event for the name supplied If the name is new it will start from the END of the channel.
*pNel | the nEventListener object to be registered as a subscriber |
*pName | an nNamedObject specifying a name for this subscription |
selector | a string specifying a filter to this subscription request |
bAutoAck | a bool used to control whether the nirvana client will automatically ack events or if the user will ack events later |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSelectorParserException | The selector has syntax errors |
nChannelAlreadySubscribedException | A subscriber is already registered with this channel on this session |
nNameAlreadyBoundException | The name is already bound and used by another client |
nSessionPausedException | The session is currently paused |
nNameDoesNotExistException | if the server does not know about the named object |
nChannelIterator* com::pcbsys::nirvana::client::nChannel::createIterator | ( | const std::string & | selector, |
longlong | startEID | ||
) |
Create a default channel iterator starting at the eid specified in the channel with the events which match the selector being returned.
selector | Used to specify a sub set of the current channel events |
startEID | The event to start iterating the channel from |
nChannelIterator* com::pcbsys::nirvana::client::nChannel::createIterator | ( | nNamedObject * | pName, |
const std::string & | selector | ||
) |
Create a default channel iterator starting at the eid specified in the channel with the events which match the selector being returned.
selector | Used to specify a sub set of the current channel events |
*pName | Named Object reference to use for this iterator |
nChannelIterator* com::pcbsys::nirvana::client::nChannel::createIterator | ( | nNamedObject * | pName | ) |
Create a default channel iterator starting at the eid specified in the channel with the events which match the selector being returned.
*pName | Named Object reference to use for this iterator |
nChannelIterator* com::pcbsys::nirvana::client::nChannel::createIterator | ( | longlong | startEID | ) |
Create a default channel iterator starting at the EID specified.
startEID | The event to start iterating the channel from |
nChannelIterator* com::pcbsys::nirvana::client::nChannel::createIterator | ( | const std::string & | selector | ) |
Create a default channel iterator starting at the beginning of the channel with the events which match the selector being returned.
selector | Used to specify a sub set of the current channel events |
nChannelIterator* com::pcbsys::nirvana::client::nChannel::createIterator | ( | ) |
Create a default channel iterator starting at the beginning of the channel.
UM_DEPRECATED nNamedObject* com::pcbsys::nirvana::client::nChannel::createNamedObject | ( | const std::string & | name, |
longlong | startEID, | ||
bool | persistent, | ||
bool | clusterWide | ||
) |
Creates a named object on the channel with the given name and depending on the persistent flag informs the server to store the name and value to disk or not.
name | to create |
startEID | event EID to start the named object from |
persistent | flag to indicate to the server where to store it |
clusterWide | flag to indicate if this named object is valid in the entire cluster |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nNameAlreadyBoundException | If the name is already in use |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused, please resume |
UM_DEPRECATED nNamedObject* com::pcbsys::nirvana::client::nChannel::createNamedObject | ( | const std::string & | name, |
bool | persistent, | ||
bool | clusterWide | ||
) |
Creates a named object on the channel with the given name and depending on the persistent flag informs the server to store the name and value to disk or not.
name | to create |
persistent | flag to indicate to the server where to store it |
clusterWide | flag to indicate if this named object is valid in the entire cluster |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nNameAlreadyBoundException | If the name is already in use |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused, please resume |
UM_DEPRECATED nNamedObject* com::pcbsys::nirvana::client::nChannel::createNamedObject | ( | const std::string & | name, |
bool | persistent | ||
) |
Creates a named object on the channel with the given name and depending on the persistent flag informs the server to store the name and value to disk or not.
name | to create |
persistent | flag to indicate to the server where to store it |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nNameAlreadyBoundException | If the name is already in use |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused, please resume |
UM_DEPRECATED nNamedObject* com::pcbsys::nirvana::client::nChannel::createNamedObject | ( | const std::string & | name, |
longlong | startEID, | ||
bool | persistent | ||
) |
Creates a named object on the channel with the given name and depending on the persistent flag informs the server to store the name and value to disk or not.
name | to create |
startEID | event EID to start the named object from |
persistent | flag to indicate to the server where to store it |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nNameAlreadyBoundException | If the name is already in use |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused, please resume |
nNamedObject* com::pcbsys::nirvana::client::nChannel::createNamedObject | ( | const std::string & | name, |
longlong | startEID | ||
) |
Creates a named object on the channel with the given name.
name | to create |
startEID | event EID to start the named object from |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nNameAlreadyBoundException | If the name is already in use |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused, please resume |
nNamedObject* com::pcbsys::nirvana::client::nChannel::createNamedObject | ( | const std::string & | name | ) |
Creates a named object on the channel with the given name.
name | to create |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nNameAlreadyBoundException | If the name is already in use |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused, please resume |
nRegisteredEvent* com::pcbsys::nirvana::client::nChannel::createRegisteredEvent | ( | nObject * | keyValue, |
bool | isTransactional = false |
||
) |
Creates a new nRegisteredEvent bound to this channel using the keyValue as its unique id.
keyValue | Unique Id to use for the nRegisteredEvent |
isTransactional | Indicates that all commits on the nRegisteredEvent should use transactional symantics |
nIllegalArgumentException | if unable to create the nRegisteredEvent object |
void com::pcbsys::nirvana::client::nChannel::deleteJoin | ( | nQueue * | pDestination | ) |
Deletes a join between this channel and the queue referenced in the destination parameter.
*pDestination | This is an nQueue object referencing the destination queue |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the queue no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nRealmNotFoundException | The remote realm could not be found |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::deleteJoin | ( | nChannel * | pDestination | ) |
Deletes a join between this channel and the channel referenced in the destination parameter.
*pDestination | This is an nChannel object referencing the destination channel |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nRealmNotFoundException | The remote realm could not be found |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::delNamedObject | ( | const std::string & | name | ) |
Removes all references for this name on the realm Server.
name | the name to be removed from the server |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nNameDoesNotExistException | The name specified does not exist on the server |
nSessionPausedException | The session is currently paused, please resume |
void com::pcbsys::nirvana::client::nChannel::delNamedObject | ( | nNamedObject * | pName | ) |
Removes all references for this name on the realm Server.
*pName | the name to be removed from the server |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nNameDoesNotExistException | The name specified does not exist on the server |
nSessionPausedException | The session is currently paused, please resume |
nChannelAttributes* com::pcbsys::nirvana::client::nChannel::getChannelAttributes | ( | ) |
Gets the channels local attributes.
nJoinInformation** com::pcbsys::nirvana::client::nChannel::getJoinInformation | ( | int & | numJoin | ) |
Returns an array of nJoinInformation objects which describe the links this channel has configured for it.
numJoin | number of nJoinInformation objects |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nRealmNotFoundException | The remote realm could not be found |
nSessionPausedException | The session is currently paused |
longlong com::pcbsys::nirvana::client::nChannel::getLastEID | ( | ) |
Gets the last event id of this channel.
nSecurityException | is thrown if the caller has unsufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nSessionPausedException | The session is currently paused |
longlong com::pcbsys::nirvana::client::nChannel::getLastStoredEID | ( | ) |
Gets the last event id of this channel.
nSecurityException | is thrown if the caller has unsufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nSessionPausedException | The session is currently paused |
std::string com::pcbsys::nirvana::client::nChannel::getName | ( | ) |
Gets the name of this channel.
nNamedObject* com::pcbsys::nirvana::client::nChannel::getNamedObject | ( | const std::string & | name | ) |
Returns an instance of the nNamedObject referenced by the parameter.
name | of the nNamedObject |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nNameDoesNotExistException | The name specified does not exist on the server |
nSessionPausedException | The session is currently paused, please resume |
nNamedObject** com::pcbsys::nirvana::client::nChannel::getNamedObjects | ( | int & | numObject | ) |
Returns an array of all known nNamedObjects registered with this channel.
numObject | number of nNamedObjects returned |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nSessionPausedException | The session is currently paused, please resume |
int com::pcbsys::nirvana::client::nChannel::getType | ( | ) |
Gets the type of this channel.
Currently supported types are:
nChanneAttributes.MIXED_TYPE
nChanneAttributes.PERSISTENT_TYPE
nChanneAttributes.RELIABLE_TYPE
nChanneAttributes.MIXED_TYPE
nChanneAttributes.PERSISTENT_TYPE
nChanneAttributes.RELIABLE_TYPE
bool com::pcbsys::nirvana::client::nChannel::isSubscribed | ( | ) |
Determines whether the underlying channel is currently being subscribed to.
void com::pcbsys::nirvana::client::nChannel::joinChannel | ( | nQueue * | pDest, |
bool | isRouted, | ||
int | hopCount, | ||
const std::string & | selector | ||
) |
Sets a server based link between this channel and the queue defined within the provided nQueue.
Additional parameters specify whether the event is routable or not, the maximum number of hops the event can pass through and the filter applied to the join (link).
*pDest | a nQueue object defining the queue to be joined (linked) to this channel |
isRouted | a bool flag specifying whether the event will be routed or not |
hopCount | an int specifying the maximum number of hops the event can pass through |
selector | A string defining a filter that will be applied in the join (link) from the source channel |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSelectorParserException | The selector has syntax errors |
nDuplicateJoinException | The join already exists on the server |
nRealmNotFoundException | The remote realm could not be found |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::joinChannel | ( | nQueue * | pDest | ) |
Sets a server based link between this channel and the queue defined within the provided nQueue.
The link has a filter applied to it, defined by the provided selector string
*pDest | a nQueue object defining the queue to be joined (linked) to this channel |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nDuplicateJoinException | The join already exists on the server |
nRealmNotFoundException | The remote realm could not be found |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::joinChannel | ( | nQueue * | pDest, |
const std::string & | selector | ||
) |
Sets a server based link between this channel and the queue defined by the *pDest parameter.
Additional parameter specifies the filter applied to the join (link).
*pDest | a nQueue object defining the queue to be joined (linked) to this channel |
selector | A string defining a filter that will be applied in the join (link) from the source channel |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSelectorParserException | The selector has syntax errors |
nDuplicateJoinException | The join already exists on the server |
nRealmNotFoundException | The remote realm could not be found |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::joinChannel | ( | nChannel * | pDest, |
bool | isRouted, | ||
int | hopCount, | ||
const std::string & | selector, | ||
bool | allowPurge | ||
) |
Sets a server based link between this channel and the channel defined within the provided nChannel.
Additional parameters specify whether the event is routable or not, the maximum number of hops the event can pass through and the filter applied to the join (link).
*pDest | a nChannel object defining the channel to be joined (linked) to this channel |
isRouted | a bool flag specifying whether the event will be routed or not |
hopCount | an int specifying the maximum number of hops the event can pass through |
selector | A string defining a filter that will be applied in the join (link) of these 2 channels |
allowPurge | if allow purge is true then when the source channel is purged events source from it will also be purged |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSelectorParserException | The selector has syntax errors |
nDuplicateJoinException | The join already exists on the server |
nRealmNotFoundException | The remote realm could not be found |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::joinChannel | ( | nChannel * | pDest, |
bool | isRouted, | ||
int | hopCount, | ||
const std::string & | selector | ||
) |
Sets a server based link between this channel and the channel defined within the provided nChannel.
Additional parameters specify whether the event is routable or not, the maximum number of hops the event can pass through and the filter applied to the join (link).
*pDest | a nChannel object defining the channel to be joined (linked) to this channel |
isRouted | a bool flag specifying whether the event will be routed or not |
hopCount | an int specifying the maximum number of hops the event can pass through |
selector | A string defining a filter that will be applied in the join (link) of these 2 channels |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSelectorParserException | The selector has syntax errors |
nDuplicateJoinException | The join already exists on the server |
nRealmNotFoundException | The remote realm could not be found |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::joinChannel | ( | nChannel * | pDest | ) |
Sets a server based link between this channel and the channel defined within the provided nChannel.
*pDest | a nChannel object defining the channel to be joined (linked) to this channel |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nDuplicateJoinException | The join already exists on the server |
nRealmNotFoundException | The remote realm could not be found |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::joinChannel | ( | nChannel * | pDest, |
const std::string & | selector | ||
) |
Sets a server based link between this channel and the channel defined within the provided nChannel.
The link has a filter applied to it, defined by the provided selector string
*pDest | a nChannel object defining the channel to be joined (linked) to this channel |
selector | A string defining a filter that will be applied in the join (link) of these 2 channels |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSelectorParserException | The selector has syntax errors |
nDuplicateJoinException | The join already exists on the server |
nRealmNotFoundException | The remote realm could not be found |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::joinChannelToArchive | ( | nQueue * | pDest, |
const std::string & | selector | ||
) |
Sets a server based link between this channel and the queue defined within the provided nQueue.
Events will NOT be checked for duplicates since this is an archive join, any events that are published to the source will appear in the destination queue. This may result in duplicate events in the queue if the queue has multiple sources. This is by design.
dest | a nQueue object defining the queue to be joined (linked) to this channel |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nDuplicateJoinException | The join already exists on the server |
nRealmNotFoundException | The remote realm could not be found |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::publish | ( | nConsumeEvent * | pEvent | ) |
Publishes the specified nConsumeEvent to this channel.
*pEvent | the nConsumeEvent object to be published to this channel |
nSecurityException | is thrown if the caller has insufficient permissions |
nSessionNotConnectedException | The session is not currently connected to the server |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::purgeEvent | ( | longlong | eidval, |
bool | purgeJoins = false |
||
) |
Purges a single event from this channel.
eidval | a long specifying the event id of the event to be purged from the channel |
purgeJoins | a bool specifying if the event will be removed from all subsequent joins |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::purgeEventAsync | ( | longlong | eidval, |
bool | purgeJoins = false |
||
) |
Purges a single event from this channel and does not wait for the response from the server.
eidval | a long specifying the event id of the event to be purged from the channel |
purgeJoins | a bool specifying if the event will be removed from all subsequent joins |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::purgeEvents | ( | longlong | startEID, |
longlong | endEID, | ||
const std::string & | selector = "" , |
||
bool | purgeJoins = false |
||
) |
Purges a range of events from this channel.
startEID | a long specifying the start event id of the range of events to be purged from the channel |
endEID | a long specifying the end event id of the range of events to be purged from the channel |
selector | A messages selector which will be used to filter out only the events which match this criteria |
purgeJoins | a bool specifying if the event will be removed from all subsequent joins |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::purgeEventsAsync | ( | longlong | startEID, |
longlong | endEID, | ||
const std::string & | selector = "" , |
||
bool | purgeJoins = false |
||
) |
Purges a range of events from this channel and does not wait for the response from the server.
startEID | a long specifying the start event id of the range of events to be purged from the channel |
endEID | a long specifying the end event id of the range of events to be purged from the channel |
selector | A messages selector which will be used to filter out only the events which match this criteria |
purgeJoins | a bool specifying if the event will be removed from all subsequent joins |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::removeConnectionListener | ( | ) |
Removes the connection listener to this channel.
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nSessionPausedException | The session is currently paused, please resume |
void com::pcbsys::nirvana::client::nChannel::removeConnectionListener | ( | nChannelConnectionListener * | pListener | ) |
Removes the connection listener to this channel.
*pListener | remove the listener |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nSessionPausedException | The session is currently paused, please resume |
void com::pcbsys::nirvana::client::nChannel::removeSubscriber | ( | nEventListener * | pNel | ) |
Unregisters the specified nEventListener as a subscriber from this channel.
The subscriber will not receive any more events.
*pNel | the nEventListener object to be registered as a subscriber |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused, please resume |
void com::pcbsys::nirvana::client::nChannel::removeSubscriber | ( | nEventListener * | pNel, |
bool | waitForResponse | ||
) |
Unregisters the specified nEventListener as a subscriber from this channel.
The subscriber will not receive any more events.
*pNel | the nEventListener object to be registered as a subscriber |
waitForResponse | if true the call will block waiting for the server to complete the request |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSessionPausedException | The session is currently paused, please resume |
void com::pcbsys::nirvana::client::nChannel::reSubscribe | ( | nNamedObject * | pName, |
const std::string & | selector | ||
) |
Removes the current subscriber and registers the specified nEventListener as a named subscriber to this channel.
The subscriber will receive all events from the last acknowledged event for the name supplied If the name is new it will start from the END of the channel.
*pName | a named object for this subscription |
selector | a string specifying a filter to this subscription request |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSelectorParserException | The selector has syntax errors |
nChannelAlreadySubscribedException | A subscriber is already registered with this channel on this session |
nNameAlreadyBoundException | The name is already bound and used by another client |
nSessionPausedException | The session is currently paused |
nNameDoesNotExistException | if the server does not know about the named object |
void com::pcbsys::nirvana::client::nChannel::reSubscribe | ( | const std::string & | selector, |
longlong | eid = -1 |
||
) |
Removes the current subscriber and re-registers the nEventListener as a subscriber to this channel.
The subscriber will receive all events with event id greater than or equal to the one specified, apart from the ones restricted by the specified filter.
selector | a string specifying a filter to this subscription request |
eid | a long specifying the subscription's start eid |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSelectorParserException | The selector has syntax errors |
nChannelAlreadySubscribedException | A subscriber is already registered with this channel on this session |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::reSubscribe | ( | longlong | eid | ) |
Removes the current subscriber and registers the specified nEventListener as a subscriber to this channel.
The subscriber will receive all events with event id greater than or equal to the one specified
eid | a long specifying the subscription's start eid |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nSelectorParserException | The selector has syntax errors |
nChannelAlreadySubscribedException | A subscriber is already registered with this channel on this session |
nSessionPausedException | The session is currently paused |
void com::pcbsys::nirvana::client::nChannel::unbindNamedObject | ( | const std::string & | name | ) |
Unbinds the named object from the current connection.
name | the name to be unbound |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nNameDoesNotExistException | The name specified does not exist on the server |
nSessionPausedException | The session is currently paused, please resume |
void com::pcbsys::nirvana::client::nChannel::unbindNamedObject | ( | nNamedObject * | pName | ) |
Unbinds the named object from the current connection.
*pName | the named object to be unbound |
nSecurityException | is thrown if the caller has insufficient permissions |
nChannelNotFoundException | if the channel no longer exists |
nRequestTimedOutException | if the request exceeded the timeout value |
nSessionNotConnectedException | The session is not currently connected to the server |
nUnexpectedResponseException | Received a response from the server for which we can not deal with, see the message for further information |
nIllegalArgumentException | Passed am illegal argument. This means the value passed is outside expected limits |
nNameDoesNotExistException | The name specified does not exist on the server |
nSessionPausedException | The session is currently paused, please resume |