- com
- pcbsys
- nirvana
- client
- nQueueSyncReader
This class provides the client with an synchronous interface into a Nirvana Queue. More...
Public Member Functions | |
String | getReaderId () throws nSessionNotConnectedException |
Returns the server side unique id of the reader. More... | |
boolean | hasEventsCached () throws nIllegalStateException |
The method will return true is we have locally cached events in the reader or in the HS layer. More... | |
final nConsumeEvent | pop () throws nSessionNotConnectedException, nSessionPausedException, nSecurityException, nIllegalStateException |
This method places thie client on the queue and will block until an event is placed onto the queue. More... | |
final nConsumeEvent | pop (final long timeout) throws nSessionNotConnectedException, nSessionPausedException, nSecurityException, nIllegalStateException |
This method places the client on the queue and will block until an event is placed onto the queue or the specified timeout expires. More... | |
final nConsumeEvent | pop (final long timeout, final String selector) throws nSessionNotConnectedException, nSessionPausedException, nSecurityException, nIllegalStateException |
This method places thie client on the queue and will block until an event is placed onto the queue or the specified timeout expires. More... | |
int | receiveCacheReturnOutstandingRequests (List< nConsumeEvent > cacheList) throws nIllegalStateException |
This method will return the number of outstanding pop client requests, sent to the server, while also filling up the provided list with all the client-side cached events. More... | |
![]() | |
boolean | hasConsumedEvents () |
Method to see whether the reader has consumed any events. More... | |
boolean | isClosed () |
When a reader is closed, the physical subscription is closed at the server. More... | |
boolean | isClosedLocally () |
A reader can be closed, but the physical subscription queue is not closed at the server. More... | |
final nConsumeEvent[] | peek (final nQueuePeekContext context) throws nSecurityException, nChannelNotFoundException, nSessionNotConnectedException, nRequestTimedOutException, nUnexpectedResponseException, nSessionPausedException, nIllegalArgumentException, nIllegalStateException |
Performs a non destructive read. More... | |
Protected Member Functions | |
void | close () throws nSessionPausedException, nSessionNotConnectedException, nRequestTimedOutException |
Closing the reader releases resources held by the server for this subscription. More... | |
int | getWindowSize () |
This method stops a this object type from having transactional consuming enabled if the window is changed. More... | |
Additional Inherited Members | |
![]() | |
static nQueuePeekContext | createContext () |
Creates a Queue Peek Context, which is used to traverse the queue. More... | |
static nQueuePeekContext | createContext (final int windowSize) |
Creates a Queue Peek Context, which is used to traverse the queue. More... | |
static nQueuePeekContext | createContext (final int windowSize, final String selector) |
Creates a Queue Peek Context, which is used to traverse the queue. More... | |
![]() | |
final int | myUniqueReaderId |
The unique id of this nQueueReader instance. More... | |
This class provides the client with an synchronous interface into a Nirvana Queue.
Events will only be delivered to this client when a call to pop
is made.
|
protectedvirtual |
Closing the reader releases resources held by the server for this subscription.
For a transactional reader it also rolls back any uncommitted events
Implements com.pcbsys.nirvana.client.nQueueReader.
Reimplemented in com.pcbsys.nirvana.client.nQueueSyncTransactionReader.
|
virtual |
Returns the server side unique id of the reader.
This ID can change after subscriber reconnect.
nSessionNotConnectedException | - if the session is not currently connected to the server. |
Implements com.pcbsys.nirvana.client.nQueueReader.
|
protected |
This method stops a this object type from having transactional consuming enabled if the window is changed.
It is overridden in com.pcbsys.nirvana.client.nQueueSyncTransactionReader
boolean com.pcbsys.nirvana.client.nQueueSyncReader.hasEventsCached | ( | ) | throws nIllegalStateException |
The method will return true is we have locally cached events in the reader or in the HS layer.
nIllegalStateException | if the reader is closed |
final nConsumeEvent com.pcbsys.nirvana.client.nQueueSyncReader.pop | ( | ) | throws nSessionNotConnectedException, nSessionPausedException, nSecurityException, nIllegalStateException |
This method places thie client on the queue and will block until an event is placed onto the queue.
nSessionNotConnectedException | Client is not currently connected to the server |
nSecurityException | If your not authorized to perform the operation on the queue |
nSessionPausedException | The session is currently paused |
nIllegalStateException | This exception is raised if there is any issues with any of the arguments used by this method. One condition of this is 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. |
final nConsumeEvent com.pcbsys.nirvana.client.nQueueSyncReader.pop | ( | final long | timeout | ) | throws nSessionNotConnectedException, nSessionPausedException, nSecurityException, nIllegalStateException |
This method places the client on the queue and will block until an event is placed onto the queue or the specified timeout expires.
If the timeout expires it will return null
timeout | Time to wait in milliseconds for an event |
nSessionNotConnectedException | Client is not currently connected to the server |
nSecurityException | If your not authorized to perform the operation on the queue |
nSessionPausedException | The session is currently paused |
nIllegalStateException | This exception is raised if there is any issues with any of the arguments used by this method. One condition of this is 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. |
final nConsumeEvent com.pcbsys.nirvana.client.nQueueSyncReader.pop | ( | final long | timeout, |
final String | selector | ||
) | throws nSessionNotConnectedException, nSessionPausedException, nSecurityException, nIllegalStateException |
This method places thie client on the queue and will block until an event is placed onto the queue or the specified timeout expires.
If the timeout expires it will return null
timeout | Time to wait in milliseconds for an event |
selector | the selection string used to filter events being popped |
nSessionNotConnectedException | Client is not currently connected to the server |
nSecurityException | If your not authorized to perform the operation on the queue |
nSessionPausedException | The session is currently paused |
nIllegalStateException | This exception is raised if there is any issues with any of the arguments used by this method. One condition of this is 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. |
int com.pcbsys.nirvana.client.nQueueSyncReader.receiveCacheReturnOutstandingRequests | ( | List< nConsumeEvent > | cacheList | ) | throws nIllegalStateException |
This method will return the number of outstanding pop client requests, sent to the server, while also filling up the provided list with all the client-side cached events.
If the provided list is null, no cached events will be extracted. The outstanding requests value is only relevant in horizontal scalability landscape. When queue sync reader tries to get an event, if there are none cached, then a pop request is sent to all of the nodes in the HS landscape. Outstanding are those requests, for which the client is still waiting for the response.
cacheList | the list, which will be filled up with all the cached events |
nIllegalStateException | if the reader is closed |