Interface ParticipantNotificationSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods to receive notifications on adds/changes
to Participants . 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 TypeMethodDescriptionvoidacknowledgeParticipantNotification(Id notificationId) Acknowledge a participant notification.booleanTests if this user can register forParticipantnotifications.Gets theCatalogueassociated with this session.Gets theCatalogueIdassociated with this session.voidregisterForChangedParticipant(Id participantId) Registers for notification of an updated participant.voidRegisters for notification of updated participants.voidregisterForChangedParticipantsForOffering(Id offeringId) Register for notifications of changed participants for the given offering.voidregisterForChangedParticipantsForResource(Id resourceId) Register for notifications of changed participants for the given resource.voidregisterForDeletedParticipant(Id participantId) Registers for notification of a deleted participants.voidRegisters for notification of deleted participants.voidregisterForDeletedParticipantsForOffering(Id offeringId) Register for notifications of deleted participants for the given offering.voidregisterForDeletedParticipantsForResource(Id resourceId) Register for notifications of deleted participants for the given resource.voidRegister for notifications of new participants.voidregisterForNewParticipantsForOffering(Id offeringId) Register for notifications of new participants for an offering.voidregisterForNewParticipantsForResource(Id resourceId) Register for notifications of new participants for a resource.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.
-
canRegisterForParticipantNotifications
boolean canRegisterForParticipantNotifications()Tests if this user can register forParticipantnotifications. 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 participants 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.
-
reliableParticipantNotifications
void reliableParticipantNotifications()Reliable notifications are desired. In reliable mode, notifications are to be acknowledged usingacknowledgeParticipantNotification().- Compliance:
mandatory- This method is must be implemented.
-
unreliableParticipantNotifications
void unreliableParticipantNotifications()Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.- Compliance:
mandatory- This method is must be implemented.
-
acknowledgeParticipantNotification
void acknowledgeParticipantNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException Acknowledge a participant notification.- Parameters:
notificationId- theIdof the notification- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewParticipants
Register for notifications of new participants.ParticipantReceiver.newParticipants()is invoked when a newParticipantis appears in this catalogue.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewParticipantsForOffering
void registerForNewParticipantsForOffering(Id offeringId) throws OperationFailedException, PermissionDeniedException Register for notifications of new participants for an offering.ParticipantReceiver.newParticipants()is invoked when a newParticipantappears in this catalogue.- Parameters:
offeringId- an offering to monitor- Throws:
NullArgumentException-offeringIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewParticipantsForResource
void registerForNewParticipantsForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException Register for notifications of new participants for a resource.ParticipantReceiver.newParticipants()is invoked when a newParticipantappears in this catalogue.- Parameters:
resourceId- a resource to monitor- Throws:
NullArgumentException-resourceIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedParticipants
Registers for notification of updated participants.ParticipantReceiver.changedParticipants()is invoked when a participant in this catalogue is changed.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedParticipantsForOffering
void registerForChangedParticipantsForOffering(Id offeringId) throws OperationFailedException, PermissionDeniedException Register for notifications of changed participants for the given offering.ParticipantReceiver.changedParticipants()is invoked when aParticipantfor the offering in this catalogue is changed.- Parameters:
offeringId- an offering to monitor- Throws:
NullArgumentException-offeringIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedParticipantsForResource
void registerForChangedParticipantsForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException Register for notifications of changed participants for the given resource.ParticipantReceiver.changedParticipants()is invoked when aParticipantfor the offering in this catalogue is changed.- Parameters:
resourceId- a resource to monitor- Throws:
NullArgumentException-resourceIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedParticipant
void registerForChangedParticipant(Id participantId) throws NotFoundException, OperationFailedException, PermissionDeniedException Registers for notification of an updated participant.ParticipantReceiver.changedParticipants()is invoked when the specified participant in this catalogue is changed.- Parameters:
participantId- theIdof theParticipantto monitor- Throws:
NotFoundException- a participant was not found identified by the givenIdNullArgumentException-participantIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedParticipants
Registers for notification of deleted participants.ParticipantReceiver.deletedParticipants()is invoked when a participant is removed from this catalogue.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedParticipantsForOffering
void registerForDeletedParticipantsForOffering(Id offeringId) throws OperationFailedException, PermissionDeniedException Register for notifications of deleted participants for the given offering.ParticipantReceiver.deletedParticipants()is invoked when aParticipantfor the offering is removed from this catalogue.- Parameters:
offeringId- an offering to monitor- Throws:
NullArgumentException-offeringIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedParticipantsForResource
void registerForDeletedParticipantsForResource(Id resourceId) throws OperationFailedException, PermissionDeniedException Register for notifications of deleted participants for the given resource.ParticipantReceiver.deletedParticipants()is invoked when aParticipantfor the offering is removed from this catalogue.- Parameters:
resourceId- a resource to monitor- Throws:
NullArgumentException-resourceIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedParticipant
void registerForDeletedParticipant(Id participantId) throws NotFoundException, OperationFailedException, PermissionDeniedException Registers for notification of a deleted participants.ParticipantReceiver.deletedParticipants()is invoked when the specified participant is removed from this catalogue.- Parameters:
participantId- theIdof theParticipantto monitor- Throws:
NotFoundException- a participant was not found identified by the givenIdNullArgumentException-participantIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-