com.pcbsys.nirvana.client.nNamedObject Class Referenceabstract

This class represents a client context on a RealmServer. More...

Inheritance diagram for com.pcbsys.nirvana.client.nNamedObject:
com.pcbsys.nirvana.client.nDurable com.pcbsys.nirvana.client.nIndexedDurable com.pcbsys.nirvana.client.nSerialDurable com.pcbsys.nirvana.client.nSharedDurable com.pcbsys.nirvana.client.nSharedDurableQueued

Public Member Functions

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 isDurableObjectInvalid ()
 When a store is removed (or modified which entails a remove and create) then these logical representations can become invalid Once they are invalid you must perform a findChannel again on the nSession to acquire the latest object. 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 (events are processed in the order that they are published across all consumers). More...
 
boolean isShared ()
 If set the named object will queue multiple subscribers and send events to them in a round-robin fashion. More...
 

Detailed Description

This class represents a client context on a RealmServer.

In as much as that if a client session is closed and sometime later a new client session is created by referencing this named object the client can resume where they were

Member Function Documentation

void com.pcbsys.nirvana.client.nNamedObject.ack ( long[]  eids) throws nIllegalArgumentException, nSessionPausedException, nSessionNotConnectedException, nRequestTimedOutException

Acknowledge multiple events in one server call.

The first argument contains all of the event IDs that you want to commit. This is functionally equivalent to calling nConsumeEvent.ack() for each event.

Parameters
eidsan array of the event IDs to be acknowledged.
Exceptions
nIllegalArgumentExceptionthrown if the event IDs were not consumed by this connection or if the named object is not shared. Also if this object has been invalidated and no longer can be utilised, this can occur if a delete request has been issued to the connected server. Some other conditions are if the event IDs were not consumed by this connection or if the named object is not shared.
nSessionNotConnectedExceptionwe cannot write to the server if the session is not open
nSessionPausedExceptionwe cannot write to the server if the session is not open
nRequestTimedOutExceptionthe server did not respond within the time allocated
Deprecated:
since 9.12 replaced with specific implementation in nSharedDurable
void com.pcbsys.nirvana.client.nNamedObject.ack ( long[]  eids,
boolean  isSynchronous 
) throws nIllegalArgumentException, nSessionNotConnectedException, nSessionPausedException, nRequestTimedOutException

Acknowledge multiple events in one server call.

The first argument contains all of the event IDs that you want to commit. This is functionally equivalent to calling nConsumeEvent.ack() for each event.

Parameters
eidsan array of the event IDs to be acknowledged.
isSynchronousif true, the thread will be held until the server has responded to the request
Exceptions
nIllegalArgumentExceptionthrown if the event IDs were not consumed by this connection or if the named object is not shared. Also if this object has been invalidated and no longer can be utilised, this can occur if a delete request has been issued to the connected server. Some other conditions are if the event IDs were not consumed by this connection or if the named object is not shared.
nSessionNotConnectedExceptionwe cannot write to the server if the session is not open
nSessionPausedExceptionwe cannot write to the server if the session is not open
nRequestTimedOutExceptionthe server did not respond within the time allocated
Deprecated:
since 9.12 replaced with specific implementation in nSharedDurable
long com.pcbsys.nirvana.client.nNamedObject.getEID ( )

Returns the current event ID that this named context is bound to.

Returns
long event ID
long com.pcbsys.nirvana.client.nNamedObject.getID ( )

Returns the unique ID of this client context.

Returns
long
String com.pcbsys.nirvana.client.nNamedObject.getName ( )

Returns the name of this client context.

Returns
String
long com.pcbsys.nirvana.client.nNamedObject.getOutstandingEvents ( )

If this object is shared, this method returns the number of messages outstanding to be consumed for this named object.

If the named object is not shared then this method will always return -1

Returns
long length
Since
9.12
long com.pcbsys.nirvana.client.nNamedObject.getSharedNamedObjectOutstandingEvents ( )

If this object is shared, this method returns the number of messages outstanding to be consumed for this named object.

If the named object is not shared then this method will always return -1

Returns
long length
Since
9.9
Deprecated:
9.12
boolean com.pcbsys.nirvana.client.nNamedObject.isClusterWide ( )

Does this named object exist across the cluster.

Returns
if the named object is cluster wide
boolean com.pcbsys.nirvana.client.nNamedObject.isDurableObjectInvalid ( )

When a store is removed (or modified which entails a remove and create) then these logical representations can become invalid Once they are invalid you must perform a findChannel again on the nSession to acquire the latest object.

Returns
true if this store is no longer valid
boolean com.pcbsys.nirvana.client.nNamedObject.isPersistent ( )

Will this named object be restored after the Realm Server has been restarted.

Returns
boolean flag
boolean com.pcbsys.nirvana.client.nNamedObject.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.

Returns
true if the named object is Priority enabled.
boolean com.pcbsys.nirvana.client.nNamedObject.isQueued ( )

If set the named object will be having hidden queue based implementation.

Returns
boolean flag
boolean com.pcbsys.nirvana.client.nNamedObject.isSerial ( )

If set the named object will queue multiple subscribers and send events to them in a serial fashion (events are processed in the order that they are published across all consumers).

Returns
true if the named object is of serial durable type.
Since
10.1
boolean com.pcbsys.nirvana.client.nNamedObject.isShared ( )

If set the named object will queue multiple subscribers and send events to them in a round-robin fashion.

Returns
true if the named object is of shared durable type.