Abstract representation of a durable subscription. More...
Public Member Functions | |
abstract nDurableViewer | createViewer () throws nBaseClientException |
Creates a nDurableViewer object for viewing the elements on a given durable object. More... | |
abstract void | remove (long eid) throws nBaseClientException |
If supported this method will attempt to remove the event with the corresponding event ID from the durable object. More... | |
abstract void | remove (long start, long end) throws nBaseClientException |
If supported this method will attempt to remove events between the start and end events on a durable. More... | |
abstract void | remove (String filter) throws nBaseClientException |
If supported this method will attempt to remove events matching a filter on a durable. More... | |
abstract void | removeAll () throws nBaseClientException |
If supported this method will attempt to remove all events on a durable. More... | |
Public Member Functions inherited from com.pcbsys.nirvana.client.nNamedObject | |
void | ack (long[] eids) throws nIllegalArgumentException, nSessionPausedException, nSessionNotConnectedException, nRequestTimedOutException |
Acknowledge multiple events in one server call. More... | |
void | ack (long[] eids, boolean isSynchronous) throws nIllegalArgumentException, nSessionNotConnectedException, nSessionPausedException, nRequestTimedOutException |
Acknowledge multiple events in one server call. More... | |
long | getEID () |
Returns the current event ID that this named context is bound to. More... | |
long | getID () |
Returns the unique ID of this client context. More... | |
String | getName () |
Returns the name of this client context. More... | |
long | getOutstandingEvents () |
If this object is shared, this method returns the number of messages outstanding to be consumed for this named object. More... | |
long | getSharedNamedObjectOutstandingEvents () |
If this object is shared, this method returns the number of messages outstanding to be consumed for this named object. More... | |
boolean | isClusterWide () |
Does this named object exist across the cluster. More... | |
boolean | isPersistent () |
Will this named object be restored after the Realm Server has been restarted. More... | |
boolean | isPriorityEnabled () |
If set the named object will queue multiple subscription such that the first subscriber will receive all events until it either disconnects or deletes the subscription, at which time, the next subscription request will start to receive events. More... | |
boolean | isQueued () |
If set the named object will be having hidden queue based implementation. More... | |
boolean | isSerial () |
If set the named object will queue multiple subscribers and send events to them in a serial fashion. More... | |
boolean | isShared () |
If set the named object will queue multiple subscribers and send events to them in a round-robin fashion. More... | |
Abstract representation of a durable subscription.
Provides a minimum set of methods to create views for a given durable object and to remove events from a durable, if supported by the underlying implementation. Implementations of this class represent specific types of durable subscriptions offered.
|
pure virtual |
Creates a nDurableViewer object for viewing the elements on a given durable object.
Consuming events through this object using the nDurableViewer::next() method will not consume or acknowledge the events for the given durable.
nBaseClientException | this exception may be thrown by implementors if creating the viewer fails |
Implemented in com.pcbsys.nirvana.client.nIndexedDurable, com.pcbsys.nirvana.client.nSharedDurableQueued, com.pcbsys.nirvana.client.nPriorityDurable, and com.pcbsys.nirvana.client.nExclusiveDurable.
|
pure virtual |
If supported this method will attempt to remove the event with the corresponding event ID from the durable object.
Currently there is only limited support for removing events from a durable subscription. Shared durable objects which are not backed by a queue are the only durable objects which support this operation. All other implementors of this interface will throw a nIllegalStateException when invoked.
eid | - the EventID to purge from. |
nIllegalStateException | If the durable object is not shared this exception will be thrown. |
Implemented in com.pcbsys.nirvana.client.nIndexedDurable, and com.pcbsys.nirvana.client.nSharedDurableQueued.
|
pure virtual |
If supported this method will attempt to remove events between the start and end events on a durable.
Currently there is only limited support for removing events from a durable subscription. Shared durable objects which are not backed by a queue are the only durable objects which support this operation. All other implementors of this interface will throw a nIllegalStateException when invoked.
start | - the EventID to start the purge from. |
end | - the end EventID to purge to. |
nIllegalStateException | If the durable object is not shared this exception will be thrown. |
nBaseClientException | If the remove operation fails this exception will be thrown |
Implemented in com.pcbsys.nirvana.client.nIndexedDurable, and com.pcbsys.nirvana.client.nSharedDurableQueued.
|
pure virtual |
If supported this method will attempt to remove events matching a filter on a durable.
Currently there is only limited support for removing events from a durable subscription. Shared durable objects which are not backed by a queue are the only durable objects which support this operation. All other implementors of this interface will throw a nIllegalStateException when invoked.
filter | - string value of the filter to purge by |
nIllegalStateException | If the durable object is not shared this exception will be thrown. |
nBaseClientException | If the remove operation fails this exception will be thrown |
Implemented in com.pcbsys.nirvana.client.nIndexedDurable, and com.pcbsys.nirvana.client.nSharedDurableQueued.
|
pure virtual |
If supported this method will attempt to remove all events on a durable.
Currently there is only limited support for removing events from a durable subscription. Shared durable objects which are not backed by a queue are the only durable objects which support this operation. All other implementors of this interface will throw a nIllegalStateException when invoked.
nIllegalStateException | If the durable object is not shared this exception will be thrown. |
nBaseClientException | If the remove operation fails this exception will be thrown |
Implemented in com.pcbsys.nirvana.client.nIndexedDurable, and com.pcbsys.nirvana.client.nSharedDurableQueued.