Interface ResultNotificationSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods to receive notifications on adds/changes
to Results . This session is intended for consumers needing to
synchronize their state with this service without the use of polling.
Notifications are cancelled when this session is closed.
-
Method Summary
Modifier and TypeMethodDescriptionvoidacknowledgeResultNotification(Id notificationId) Acknowledge a result notification.booleanTests if this user can register forResultnotifications.Gets theCatalogueassociated with this session.Gets theCatalogueIdassociated with this session.voidregisterForChangedResult(Id resultId) Registers for notification of an updated result.voidRegisters for notification of updated results.voidregisterForChangedResultsForParticipant(Id participantId) Register for notifications of changed results for the given participantId.voidregisterForDeletedResult(Id resultId) Registers for notification of a deleted result.voidRegisters for notification of deleted results.voidregisterForDeletedResultsForParticipant(Id participantId) Register for notifications of deleted results for the given participantId.voidRegister for notifications of new results.voidregisterForNewResultsForParticipant(Id participantId) Register for notifications of new results for the given participantId.voidReliable notifications are desired.voidUnreliable notifications are desired.voidFederates the view for methods in this session.voidIsolates the view for methods in this session.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionsModifier and TypeMethodDescriptionGets the agent authenticated to this session.Gets theIdof the agent authenticated to this session.Gets the rate of the service clock.getDate()Gets the service date which may be the current date or the effective date in which this session exists.Gets the effective agent in use by this session.Gets theIdof the effective agent in use by this session.Gets theDisplayTextformatTypepreference in effect for this session.Gets the locale indicating the localization preferences in effect for this session.booleanTests if an agent is authenticated to this session.Starts a new transaction for this sesson.booleanTests for the availability of transactions.
-
Method Details
-
getCatalogueId
Id getCatalogueId()Gets theCatalogueIdassociated with this session.- Returns:
- the
Catalogue Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getCatalogue
Gets theCatalogueassociated with this session.- Returns:
- the catalogue
- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canRegisterForResultNotifications
boolean canRegisterForResultNotifications()Tests if this user can register forResultnotifications. A return of true does not guarantee successful authorization. A return of false indicates that it is known all methods in this session will result in aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer notification operations.- Returns:
falseif notification methods are not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
useFederatedCatalogueView
void useFederatedCatalogueView()Federates the view for methods in this session. A federated view will include notifications for resultss in catalogues which are children of this catalogue in the catalogue hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedCatalogueView
void useIsolatedCatalogueView()Isolates the view for methods in this session. An isolated view restricts notifications to this catalogue only.- Compliance:
mandatory- This method is must be implemented.
-
reliableResultNotifications
void reliableResultNotifications()Reliable notifications are desired. In reliable mode, notifications are to be acknowledged usingacknowledgeResultNotification().- Compliance:
mandatory- This method is must be implemented.
-
unreliableResultNotifications
void unreliableResultNotifications()Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.- Compliance:
mandatory- This method is must be implemented.
-
acknowledgeResultNotification
void acknowledgeResultNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException Acknowledge a result notification.- Parameters:
notificationId- theIdof the notification- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewResults
Register for notifications of new results.ResultReceiver.newResults()is invoked when a newResultis created.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewResultsForParticipant
void registerForNewResultsForParticipant(Id participantId) throws OperationFailedException, PermissionDeniedException Register for notifications of new results for the given participantId.ResultReceiver.newResults()is invoked when a newResultappears in this catalogue.- Parameters:
participantId- theIdof the participant to monitor- Throws:
NullArgumentException-participantIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedResults
Registers for notification of updated results.ResultReceiver.changedResults()is invoked when a result in this catalogue is changed.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedResultsForParticipant
void registerForChangedResultsForParticipant(Id participantId) throws OperationFailedException, PermissionDeniedException Register for notifications of changed results for the given participantId.ResultReceiver.changedResults()is invoked when aResultfor the resource is changed in this catalogue.- Parameters:
participantId- theIdof the participant to monitor- Throws:
NullArgumentException-participantIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedResult
void registerForChangedResult(Id resultId) throws NotFoundException, OperationFailedException, PermissionDeniedException Registers for notification of an updated result.ResultReceiver.changedResults()is invoked when the specified result in this catalogue is changed.- Parameters:
resultId- theIdof theResultto monitor- Throws:
NotFoundException- a result was not found identified by the givenIdNullArgumentException-resultIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedResults
Registers for notification of deleted results.ResultReceiver.deletedResults()is invoked when a result is removed from this catalogue.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedResultsForParticipant
void registerForDeletedResultsForParticipant(Id participantId) throws OperationFailedException, PermissionDeniedException Register for notifications of deleted results for the given participantId.ResultReceiver.deletedResults()is invoked when aResultfor the resource is removed from this catalogue.- Parameters:
participantId- theIdof the participant to monitor- Throws:
NullArgumentException-participantIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedResult
void registerForDeletedResult(Id resultId) throws NotFoundException, OperationFailedException, PermissionDeniedException Registers for notification of a deleted result.ResultReceiver.deletedResults()is invoked when the specified result is removed from this catalogue.- Parameters:
resultId- theIdof theResultto monitor- Throws:
NotFoundException- a result was not found identified by the givenIdNullArgumentException-resultIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-