Interface EventNotificationSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session defines methods to receive asynchronous notifications on
adds/changes to Event objects. 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 views defined in this session correspond to the views in the
EventLookupSession .
-
Method Summary
Modifier and TypeMethodDescriptionvoidacknowledgeEventNotification(Id notificationId) Acknowledge an event notification.booleanTests if this user can register forEventnotifications.Gets theCalendarassociated with this session.Gets theCalendarIdassociated with this session.voidregisterForChangedEvent(Id eventId) Registers for notification of an updated event.voidRegisters for notification of updated events.voidregisterForDeletedEvent(Id eventId) Registers for notification of a deleted event.voidRegisters for notification of deleted events.voidRegister for notifications of new events.voidReliable notifications are desired.voidUnreliable notifications are desired.voidA denormalized view sends a separate notification for each non-recurring event within a recurring set.voidFederates the view for methods in this session.voidIsolates the view for methods in this session.voidA normalized view sends a single notification for recurring events.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
-
getCalendarId
Id getCalendarId()Gets theCalendarIdassociated with this session.- Returns:
- the
Calendar Idassociated with this session - Compliance:
mandatory- This method must be implemented.
-
getCalendar
Gets theCalendarassociated with this session.- Returns:
- the
Calendarassociated with this session - Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
canRegisterForEventNotifications
boolean canRegisterForEventNotifications()Tests if this user can register forEventnotifications. 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.
-
useFederatedCalendarView
void useFederatedCalendarView()Federates the view for methods in this session. A federated view will include notifications for events in calendars which are children of this calendar in the calendar hierarchy.- Compliance:
mandatory- This method is must be implemented.
-
useIsolatedCalendarView
void useIsolatedCalendarView()Isolates the view for methods in this session. An isolated view restricts notifications to this calendar only.- Compliance:
mandatory- This method is must be implemented.
-
useNormalizedEventView
void useNormalizedEventView()A normalized view sends a single notification for recurring events.- Compliance:
mandatory- This method is must be implemented.
-
useDenormalizedEventView
void useDenormalizedEventView()A denormalized view sends a separate notification for each non-recurring event within a recurring set.- Compliance:
mandatory- This method is must be implemented.
-
reliableEventNotifications
void reliableEventNotifications()Reliable notifications are desired. In reliable mode, notifications are to be acknowledged usingacknowledgeEventNotification().- Compliance:
mandatory- This method is must be implemented.
-
unreliableEventNotifications
void unreliableEventNotifications()Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.- Compliance:
mandatory- This method is must be implemented.
-
acknowledgeEventNotification
void acknowledgeEventNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException Acknowledge an event notification.- Parameters:
notificationId- theIdof the notification- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForNewEvents
Register for notifications of new events.EventReceiver.newEvents()is invoked when a new event is created.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedEvents
Registers for notification of updated events.EventReceiver.changedEvents()is invoked when an event is changed.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForChangedEvent
Registers for notification of an updated event.EventReceiver.changedEvents()is invoked when the specified event is changed.- Parameters:
eventId- theIdof theEventto monitor- Throws:
NullArgumentException-eventId is nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedEvents
Registers for notification of deleted events.EventReceiver.deletedEvents()is invoked when an event is removed from this calendar.- Throws:
OperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
registerForDeletedEvent
Registers for notification of a deleted event.EventReceiver.changedEvents()is invoked when the specified event is removed from this calendar.- Parameters:
eventId- theIdof theEventto monitor- Throws:
NullArgumentException-eventId is nullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-