com::pcbsys::nirvana::client::nChannel Class Reference

This class is a Nirvana channel, offering the Nirvana channel related services. More...

#include <nChannel.h>

Inheritance diagram for com::pcbsys::nirvana::client::nChannel:
com::pcbsys::nirvana::client::nAbstractChannel

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...
 
void addSubscriber (nEventListener *pNel, nNamedObject *pName, nNamedPriorityListener *pListener)
 Registers the specified nEventListener as a named subscriber to this channel. More...
 
void addSubscriber (nEventListener *pNel, nNamedObject *pName, const std::string &selector, bool bAutoAck, nNamedPriorityListener *pListener)
 Registers the specified nEventListener as a named subscriber to this channel. More...
 
nChannelIteratorcreateIterator (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...
 
nChannelIteratorcreateIterator (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...
 
nChannelIteratorcreateIterator (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...
 
nChannelIteratorcreateIterator (longlong startEID)
 Create a default channel iterator starting at the EID specified. More...
 
nChannelIteratorcreateIterator (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...
 
nChannelIteratorcreateIterator ()
 Create a default channel iterator starting at the beginning of the channel. More...
 
nNamedObjectcreateNamedObject (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...
 
nNamedObjectcreateNamedObject (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...
 
nNamedObjectcreateNamedObject (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...
 
nNamedObjectcreateNamedObject (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...
 
nNamedObjectcreateNamedObject (const std::string &name, longlong startEID)
 Creates a named object on the channel with the given name. More...
 
nNamedObjectcreateNamedObject (const std::string &name)
 Creates a named object on the channel with the given name. More...
 
nNamedObjectcreateNamedObject (const std::string &name, longlong startEID, bool persistent, bool clusterWide, bool enablePriority)
 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...
 
nRegisteredEventcreateRegisteredEvent (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...
 
nChannelAttributesgetChannelAttributes ()
 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...
 
nNamedObjectgetNamedObject (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...
 
- Public Member Functions inherited from com::pcbsys::nirvana::client::nAbstractChannel
int getQueueSize ()
 Returns the size of the underlying event queue waiting for delivery via the go method. More...
 
nSessiongetSession ()
 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...
 

Detailed Description

This class is a Nirvana channel, offering the Nirvana channel related services.

Member Function Documentation

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.

Parameters
*pListenerto add
Exceptions
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits, or has already been set.
nSessionPausedExceptionThe 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.

Parameters
*pListenerto add
isSyncthe call is synchronous
Exceptions
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits, or has already been set.
nSessionPausedExceptionThe 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.

Parameters
*pNelthe nEventListener object to be registered as a subscriber
Exceptions
nSecurityExceptionis thrown if the caller has unsufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nChannelAlreadySubscribedExceptionA 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.

Parameters
*pNelthe nEventListener object to be registered as a subscriber
eida long specifying the subscription's start eid
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nChannelAlreadySubscribedExceptionA subscriber is already registered with this channel on this session
nSessionPausedExceptionThe 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.

Parameters
*pNelthe nEventListener object to be registered as a subscriber
selectora string specifying a filter to this subscription request
eida long specifying the subscription's start eid
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nChannelAlreadySubscribedExceptionA subscriber is already registered with this channel on this session
nSessionPausedExceptionThe 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.

Parameters
*pNelthe nEventListener object to be registered as a subscriber
*pNamea nNamedObject specifying a name for this subscription
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nChannelAlreadySubscribedExceptionA subscriber is already registered with this channel on this session
nNameAlreadyBoundExceptionThe name is already bound and used by another client
nSessionPausedExceptionThe session is currently paused
nNameDoesNotExistExceptionif 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.

Parameters
*pNelthe nEventListener object to be registered as a subscriber
*pNamean nNamedObject specifying a name for this subscription
selectora string specifying a filter to this subscription request
bAutoAcka bool used to control whether the nirvana client will automatically ack events or if the user will ack events later
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nChannelAlreadySubscribedExceptionA subscriber is already registered with this channel on this session
nNameAlreadyBoundExceptionThe name is already bound and used by another client
nSessionPausedExceptionThe session is currently paused
nNameDoesNotExistExceptionif the server does not know about the named object
void com::pcbsys::nirvana::client::nChannel::addSubscriber ( nEventListener pNel,
nNamedObject pName,
nNamedPriorityListener pListener 
)

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.

Parameters
nelthe nEventListener object to be registered as a subscriber
namea nNamedObject specifying a name for this subscription
listenera nNamedPriorityListener which is called back when this subscription reaches the top of the queue and is now the top priority to receive events
Exceptions
nSecurityExceptionis thrown if the caller has unsufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nChannelAlreadySubscribedExceptionA subscriber is already registered with this channel on this session
nNameAlreadyBoundExceptionThe name is already bound and used by another client
nSessionPausedExceptionThe session is currently paused
nNameDoesNotExistExceptionif 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,
nNamedPriorityListener pListener 
)

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.

Parameters
nelthe nEventListener object to be registered as a subscriber
namean nNamedObject specifying a name for this subscription
selectora string specifying a filter to this subscription request
AutoAcka boolean used to control whether the nirvana client will automatically ack events or if the user will ack events later
listenera nNamedPriorityListener which is called back when this subscription reaches the top of the queue and is now the top priority to receive events
Exceptions
nSecurityExceptionis thrown if the caller has unsufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nChannelAlreadySubscribedExceptionA subscriber is already registered with this channel on this session
nNameAlreadyBoundExceptionThe name is already bound and used by another client
nSessionPausedExceptionThe session is currently paused
nNameDoesNotExistExceptionif 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.

Parameters
selectorUsed to specify a sub set of the current channel events
startEIDThe event to start iterating the channel from
Returns
nChannelIterator for the current channel
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.

Parameters
selectorUsed to specify a sub set of the current channel events
*pNameNamed Object reference to use for this iterator
Returns
nChannelIterator for the current channel
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.

Parameters
*pNameNamed Object reference to use for this iterator
Returns
nChannelIterator for the current channel
nChannelIterator* com::pcbsys::nirvana::client::nChannel::createIterator ( longlong  startEID)

Create a default channel iterator starting at the EID specified.

Parameters
startEIDThe event to start iterating the channel from
Returns
nChannelIterator for the current channel
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.

Parameters
selectorUsed to specify a sub set of the current channel events
Returns
nChannelIterator for the current channel
nChannelIterator* com::pcbsys::nirvana::client::nChannel::createIterator ( )

Create a default channel iterator starting at the beginning of the channel.

Returns
nChannelIterator for the current channel
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.

Parameters
nameto create
startEIDevent EID to start the named object from
persistentflag to indicate to the server where to store it
clusterWideflag to indicate if this named object is valid in the entire cluster
Returns
the nNamedObject created
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nNameAlreadyBoundExceptionIf the name is already in use
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe session is currently paused, please resume
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.

Parameters
nameto create
persistentflag to indicate to the server where to store it
clusterWideflag to indicate if this named object is valid in the entire cluster
Returns
the nNamedObject created
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nNameAlreadyBoundExceptionIf the name is already in use
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe session is currently paused, please resume
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.

Parameters
nameto create
persistentflag to indicate to the server where to store it
Returns
the nNamedObject created
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nNameAlreadyBoundExceptionIf the name is already in use
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe session is currently paused, please resume
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.

Parameters
nameto create
startEIDevent EID to start the named object from
persistentflag to indicate to the server where to store it
Returns
the nNamedObject created
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nNameAlreadyBoundExceptionIf the name is already in use
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe 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.

Parameters
nameto create
startEIDevent EID to start the named object from
Returns
the nNamedObject created
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nNameAlreadyBoundExceptionIf the name is already in use
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe 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.

Parameters
nameto create
Returns
the nNamedObject created
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nNameAlreadyBoundExceptionIf the name is already in use
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe session is currently paused, please resume
nNamedObject* com::pcbsys::nirvana::client::nChannel::createNamedObject ( const std::string &  name,
longlong  startEID,
bool  persistent,
bool  clusterWide,
bool  enablePriority 
)

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.

Parameters
nameto create
startEIDevent EID to start the named object from
persistentflag to indicate to the server where to store it
clusterWideflag to indicate if this named object is valid in the entire cluster
enablePriorityflag to indicate if multiple subscriptions will be prioritized on this object
Returns
the nNamedObject created
Exceptions
nSecurityExceptionis thrown if the caller has unsufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nNameAlreadyBoundExceptionIf the name is already in use
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe 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.

Parameters
keyValueUnique Id to use for the nRegisteredEvent
isTransactionalIndicates that all commits on the nRegisteredEvent should use transactional symantics
Returns
nRegisteredEvent
Exceptions
nIllegalArgumentExceptionif 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.

Parameters
*pDestinationThis is an nQueue object referencing the destination queue
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the queue no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nRealmNotFoundExceptionThe remote realm could not be found
nSessionPausedExceptionThe 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.

Parameters
*pDestinationThis is an nChannel object referencing the destination channel
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nRealmNotFoundExceptionThe remote realm could not be found
nSessionPausedExceptionThe 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.

Parameters
namethe name to be removed from the server
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nNameDoesNotExistExceptionThe name specified does not exist on the server
nSessionPausedExceptionThe 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.

Parameters
*pNamethe name to be removed from the server
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nNameDoesNotExistExceptionThe name specified does not exist on the server
nSessionPausedExceptionThe session is currently paused, please resume
nChannelAttributes* com::pcbsys::nirvana::client::nChannel::getChannelAttributes ( )

Gets the channels local attributes.

Returns
The associated nChannelAttributes object specifying the channel 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.

Parameters
numJoinnumber of nJoinInformation objects
Returns
array of nJoinInformation objects
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nRealmNotFoundExceptionThe remote realm could not be found
nSessionPausedExceptionThe session is currently paused
longlong com::pcbsys::nirvana::client::nChannel::getLastEID ( )

Gets the last event id of this channel.

Returns
a long specifying the last event id of this channel
Exceptions
nSecurityExceptionis thrown if the caller has unsufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nSessionPausedExceptionThe session is currently paused
longlong com::pcbsys::nirvana::client::nChannel::getLastStoredEID ( )

Gets the last event id of this channel.

Returns
a long specifying the last event id stored on this channel
Exceptions
nSecurityExceptionis thrown if the caller has unsufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nSessionPausedExceptionThe session is currently paused
std::string com::pcbsys::nirvana::client::nChannel::getName ( )

Gets the name of this channel.

Returns
a string specifying 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.

Parameters
nameof the nNamedObject
Returns
nNamedObject
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nNameDoesNotExistExceptionThe name specified does not exist on the server
nSessionPausedExceptionThe 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.

Parameters
numObjectnumber of nNamedObjects returned
Returns
nNamedObject[] named objects
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nSessionPausedExceptionThe 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.SIMPLE_TYPE
nChanneAttributes.PERSISTENT_TYPE
nChanneAttributes.RELIABLE_TYPE
nChanneAttributes.TRANSIENT_TYPE

Returns
an int specifying the channel's type, which will be equal to one of :

nChanneAttributes.MIXED_TYPE
nChanneAttributes.SIMPLE_TYPE
nChanneAttributes.PERSISTENT_TYPE
nChanneAttributes.RELIABLE_TYPE
nChanneAttributes.TRANSIENT_TYPE

See Also
nChannelAttributes
bool com::pcbsys::nirvana::client::nChannel::isSubscribed ( )

Determines whether the underlying channel is currently being subscribed to.

Returns
true if the channel object is currently 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).

Parameters
*pDesta nQueue object defining the queue to be joined (linked) to this channel
isRouteda bool flag specifying whether the event will be routed or not
hopCountan int specifying the maximum number of hops the event can pass through
selectorA string defining a filter that will be applied in the join (link) from the source channel
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nDuplicateJoinExceptionThe join already exists on the server
nRealmNotFoundExceptionThe remote realm could not be found
nSessionPausedExceptionThe 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

Parameters
*pDesta nQueue object defining the queue to be joined (linked) to this channel
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nDuplicateJoinExceptionThe join already exists on the server
nRealmNotFoundExceptionThe remote realm could not be found
nSessionPausedExceptionThe 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).

Parameters
*pDesta nQueue object defining the queue to be joined (linked) to this channel
selectorA string defining a filter that will be applied in the join (link) from the source channel
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nDuplicateJoinExceptionThe join already exists on the server
nRealmNotFoundExceptionThe remote realm could not be found
nSessionPausedExceptionThe 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).

Parameters
*pDesta nChannel object defining the channel to be joined (linked) to this channel
isRouteda bool flag specifying whether the event will be routed or not
hopCountan int specifying the maximum number of hops the event can pass through
selectorA string defining a filter that will be applied in the join (link) of these 2 channels
allowPurgeif allow purge is true then when the source channel is purged events source from it will also be purged
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nDuplicateJoinExceptionThe join already exists on the server
nRealmNotFoundExceptionThe remote realm could not be found
nSessionPausedExceptionThe 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).

Parameters
*pDesta nChannel object defining the channel to be joined (linked) to this channel
isRouteda bool flag specifying whether the event will be routed or not
hopCountan int specifying the maximum number of hops the event can pass through
selectorA string defining a filter that will be applied in the join (link) of these 2 channels
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nDuplicateJoinExceptionThe join already exists on the server
nRealmNotFoundExceptionThe remote realm could not be found
nSessionPausedExceptionThe 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.

Parameters
*pDesta nChannel object defining the channel to be joined (linked) to this channel
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nDuplicateJoinExceptionThe join already exists on the server
nRealmNotFoundExceptionThe remote realm could not be found
nSessionPausedExceptionThe 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

Parameters
*pDesta nChannel object defining the channel to be joined (linked) to this channel
selectorA string defining a filter that will be applied in the join (link) of these 2 channels
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nDuplicateJoinExceptionThe join already exists on the server
nRealmNotFoundExceptionThe remote realm could not be found
nSessionPausedExceptionThe 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.

Parameters
desta nQueue object defining the queue to be joined (linked) to this channel
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nDuplicateJoinExceptionThe join already exists on the server
nRealmNotFoundExceptionThe remote realm could not be found
nSessionPausedExceptionThe session is currently paused
void com::pcbsys::nirvana::client::nChannel::publish ( nConsumeEvent pEvent)

Publishes the specified nConsumeEvent to this channel.

Parameters
*pEventthe nConsumeEvent object to be published to this channel
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nSessionNotConnectedExceptionThe session is not currently connected to the server
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe session is currently paused
void com::pcbsys::nirvana::client::nChannel::purgeEvent ( longlong  eidval,
bool  purgeJoins = false 
)

Purges a single event from this channel.

Parameters
eidvala long specifying the event id of the event to be purged from the channel
purgeJoinsa bool specifying if the event will be removed from all subsequent joins
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe 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.

Parameters
eidvala long specifying the event id of the event to be purged from the channel
purgeJoinsa bool specifying if the event will be removed from all subsequent joins
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe 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.

Parameters
startEIDa long specifying the start event id of the range of events to be purged from the channel
endEIDa long specifying the end event id of the range of events to be purged from the channel
selectorA messages selector which will be used to filter out only the events which match this criteria
purgeJoinsa bool specifying if the event will be removed from all subsequent joins
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe 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.

Parameters
startEIDa long specifying the start event id of the range of events to be purged from the channel
endEIDa long specifying the end event id of the range of events to be purged from the channel
selectorA messages selector which will be used to filter out only the events which match this criteria
purgeJoinsa bool specifying if the event will be removed from all subsequent joins
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe session is currently paused
void com::pcbsys::nirvana::client::nChannel::removeConnectionListener ( )

Removes the connection listener to this channel.

Exceptions
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nSessionPausedExceptionThe session is currently paused, please resume
void com::pcbsys::nirvana::client::nChannel::removeConnectionListener ( nChannelConnectionListener pListener)

Removes the connection listener to this channel.

Parameters
*pListenerremove the listener
Exceptions
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nSessionPausedExceptionThe 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.

Parameters
*pNelthe nEventListener object to be registered as a subscriber
Exceptions
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe 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.

Parameters
*pNelthe nEventListener object to be registered as a subscriber
waitForResponseif true the call will block waiting for the server to complete the request
Exceptions
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSessionPausedExceptionThe 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.

Parameters
*pNamea named object for this subscription
selectora string specifying a filter to this subscription request
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nChannelAlreadySubscribedExceptionA subscriber is already registered with this channel on this session
nNameAlreadyBoundExceptionThe name is already bound and used by another client
nSessionPausedExceptionThe session is currently paused
nNameDoesNotExistExceptionif 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.

Parameters
selectora string specifying a filter to this subscription request
eida long specifying the subscription's start eid
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nChannelAlreadySubscribedExceptionA subscriber is already registered with this channel on this session
nSessionPausedExceptionThe 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

Parameters
eida long specifying the subscription's start eid
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nSelectorParserExceptionThe selector has syntax errors
nChannelAlreadySubscribedExceptionA subscriber is already registered with this channel on this session
nSessionPausedExceptionThe session is currently paused
void com::pcbsys::nirvana::client::nChannel::unbindNamedObject ( const std::string &  name)

Unbinds the named object from the current connection.

Parameters
namethe name to be unbound
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nNameDoesNotExistExceptionThe name specified does not exist on the server
nSessionPausedExceptionThe session is currently paused, please resume
void com::pcbsys::nirvana::client::nChannel::unbindNamedObject ( nNamedObject pName)

Unbinds the named object from the current connection.

Parameters
*pNamethe named object to be unbound
Exceptions
nSecurityExceptionis thrown if the caller has insufficient permissions
nChannelNotFoundExceptionif the channel no longer exists
nRequestTimedOutExceptionif the request exceeded the timeout value
nSessionNotConnectedExceptionThe session is not currently connected to the server
nUnexpectedResponseExceptionReceived a response from the server for which we can not deal with, see the message for further information
nIllegalArgumentExceptionPassed am illegal argument. This means the value passed is outside expected limits
nNameDoesNotExistExceptionThe name specified does not exist on the server
nSessionPausedExceptionThe session is currently paused, please resume