public interface ScheduleNotificationSession extends OsidSession
This session defines methods to receive asynchronous notifications on
adds/changes to Schedule
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
ScheduleLookupSession.
Modifier and Type | Method and Description |
---|---|
void |
acknowledgeScheduleNotification(Id notificationId)
Acknowledge a schedule notification.
|
boolean |
canRegisterForScheduleNotifications()
Tests if this user can register for
Schedule
notifications. |
Calendar |
getCalendar()
Gets the
Calendar associated with this session. |
Id |
getCalendarId()
Gets the
Calendar Id associated with
this session. |
void |
registerForChangedSchedule(Id scheduleId)
Registers for notification of an updated schedule.
|
void |
registerForChangedSchedules()
Registers for notification of updated schedule schedules.
|
void |
registerForDeletedSchedule(Id scheduleId)
Registers for notification of a deleted schedule.
|
void |
registerForDeletedSchedules()
Registers for notification of deleted schedules.
|
void |
registerForNewSchedules()
Register for notifications of new schedules.
|
void |
reliableScheduleNotifications()
Reliable notifications are desired.
|
void |
unreliableScheduleNotifications()
Unreliable notifications are desired.
|
void |
useFederatedCalendarView()
Federates the view for methods in this session.
|
void |
useIsolatedCalendarView()
Isolates the view for methods in this session.
|
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactions
close
Id getCalendarId()
Calendar
Id
associated with
this session. Calendar Id
associated with this sessionmandatory
- This method must be implemented. Calendar getCalendar() throws OperationFailedException, PermissionDeniedException
Calendar
associated with this session. Calendar
associated with this sessionOperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. boolean canRegisterForScheduleNotifications()
Schedule
notifications. 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 a PERMISSION_DENIED.
This is intended as a hint to an application that may opt not
to offer notification operations. false
if notification methods are not
authorized, true
otherwisemandatory
- This method must be implemented. void useFederatedCalendarView()
mandatory
- This method is must be implemented. void useIsolatedCalendarView()
mandatory
- This method is must be implemented. void reliableScheduleNotifications()
acknowledgeScheduleNotification()
.mandatory
- This method is must be implemented. void unreliableScheduleNotifications()
mandatory
- This method is must be implemented. void acknowledgeScheduleNotification(Id notificationId) throws OperationFailedException, PermissionDeniedException
notificationId
- the Id
of the notificationOperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForNewSchedules() throws OperationFailedException, PermissionDeniedException
ScheduleReceiver.newSchedules()
is invoked when a new schedule
is created.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedSchedules() throws OperationFailedException, PermissionDeniedException
ScheduleReceiver.changedSchedules()
is invoked when a schedule
is changed.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForChangedSchedule(Id scheduleId) throws OperationFailedException, PermissionDeniedException
ScheduleReceiver.changedSchedules()
is invoked when the
specified schedule is changed.scheduleId
- the Id
of the Schedule
to monitorNullArgumentException
- scheduleId is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedSchedules() throws OperationFailedException, PermissionDeniedException
ScheduleReceiver.deletedSchedules()
is invoked when a schedule
is removed from this calendar.OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented. void registerForDeletedSchedule(Id scheduleId) throws OperationFailedException, PermissionDeniedException
ScheduleReceiver.changedSchedules()
is invoked when the
specified schedule is removed from this calendar.scheduleId
- the Id
of the Schedule
to monitorNullArgumentException
- scheduleId is null
OperationFailedException
- unable to complete requestPermissionDeniedException
- authorization failuremandatory
- This method must be implemented.