Interface ActivityNotificationSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods to receive asynchronous notifications on
adds/changes to Activities . 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.
The two views defined in this session correspond to the views in the
ActivityLookupSession .
-
Method Summary
Modifier and TypeMethodDescriptionvoidacknowledgeActivityNotification(Id notificationId) Acknowledge an activity notification.booleanTests if this user can register forActivitynotifications.Gets theObjectiveBankassociated with this session.Gets theObjectiveBankIdassociated with this session.voidRegisters for notification of updated activities.voidregisterForChangedActivitiesForObjective(Id objectiveId) Registers for notification of updated activities.voidregisterForChangedActivity(Id activityId) Registers for notification of an updated activity.voidRegisters for notification of deleted activities.voidregisterForDeletedActivitiesForObjective(Id objectiveId) Registers for notification of deleted activities.voidregisterForDeletedActivity(Id activityId) Registers for notification of a deleted activity.voidRegister for notifications of new activities.voidregisterForNewActivitiesForObjective(Id objectiveId) Register for notifications of new activities for the given objective.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
-
getObjectiveBankId
Id getObjectiveBankId()Gets theObjectiveBankIdassociated with this session.- Returns:
- the
ObjectiveBank Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getObjectiveBank
Gets theObjectiveBankassociated with this session.- Returns:
- the
ObjectiveBankassociated with this session - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canRegisterForActivityNotifications
boolean canRegisterForActivityNotifications()Tests if this user can register forActivitynotifications. 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.
-
useFederatedObjectiveBankView
void useFederatedObjectiveBankView()Federates the view for methods in this session. A federated view will include notifications for activities in objective banks which are children of this objective bank in the objective bank hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedObjectiveBankView
void useIsolatedObjectiveBankView()Isolates the view for methods in this session. An isolated view restricts notifications to this objective bank only.- Compliance:
mandatory- This method is must be implemented.
-
reliableActivityNotifications
void reliableActivityNotifications()Reliable notifications are desired. In reliable mode, notifications are to be acknowledged usingacknowledgeActivityNotification().- Compliance:
mandatory- This method is must be implemented.
-
unreliableActivityNotifications
void unreliableActivityNotifications()Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.- Compliance:
mandatory- This method is must be implemented.
-
acknowledgeActivityNotification
void acknowledgeActivityNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException Acknowledge an activity notification.- Parameters:
notificationId- theIdof the notification- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewActivities
Register for notifications of new activities.ActivityReceiver.newActivities()is invoked when a new activity is created.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewActivitiesForObjective
void registerForNewActivitiesForObjective(Id objectiveId) throws OperationFailedException, PermissionDeniedException Register for notifications of new activities for the given objective.ActivityReceiver.newActivities()is invoked when a new activity is created.- Parameters:
objectiveId- theIdof theActivityto monitor- Throws:
NullArgumentException-objectiveId is nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedActivities
Registers for notification of updated activities.ActivityReceiver.changedActivities()is invoked when an activity is changed.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedActivitiesForObjective
void registerForChangedActivitiesForObjective(Id objectiveId) throws OperationFailedException, PermissionDeniedException Registers for notification of updated activities.ActivityReceiver.changedActivities()is invoked when an activity is changed.- Parameters:
objectiveId- theIdof theObjectiveto monitor- Throws:
NullArgumentException-objectiveId is nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedActivity
void registerForChangedActivity(Id activityId) throws OperationFailedException, PermissionDeniedException Registers for notification of an updated activity.ActivityReceiver.changedActivities()is invoked when the specified activity is changed.- Parameters:
activityId- theIdof theActivityto monitor- Throws:
NullArgumentException-activityId is nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedActivities
Registers for notification of deleted activities.ActivityReceiver.deletedActivities()is invoked when an activity is removed from this objective bank.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedActivitiesForObjective
void registerForDeletedActivitiesForObjective(Id objectiveId) throws OperationFailedException, PermissionDeniedException Registers for notification of deleted activities.ActivityReceiver.deletedActivities()is invoked when an activity is removed from this objective bank.- Parameters:
objectiveId- theIdof theObjectiveto monitor- Throws:
NullArgumentException-objectiveId is nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedActivity
void registerForDeletedActivity(Id activityId) throws OperationFailedException, PermissionDeniedException Registers for notification of a deleted activity.ActivityReceiver.changedActivities()is invoked when the specified activity is removed from this objective bank.- Parameters:
activityId- theIdof theActivityto monitor- Throws:
NullArgumentException-activityId is nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-