OSID Logo
OSID Specifications
course package
Version 3.0.0
Release Candidate Preview
Interfaceosid.course.CourseNotificationSession
Implementsosid.OsidSession
Description

This session defines methods to receive notifications on adds/changes to Course objects in this CourseCatalog. This also includes existing courses that may appear or disappear due to changes in the CourseCatalog hierarchy, 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 CourseLookupSession.

MethodgetCourseCatalogId
Description

Gets the CourseCatalog Id associated with this session.

Returnosid.id.Idthe CourseCatalog Id associated with this session
CompliancemandatoryThis method must be implemented.
MethodgetCourseCatalog
Description

Gets the CourseCatalog associated with this session.

Returnosid.course.CourseCatalogthe course catalog
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodcanRegisterForCourseNotifications
Description

Tests if this user can register for Course 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.

Returnboolean false if notification methods are not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethoduseFederatedCourseCatalogView
Description

Federates the view for methods in this session. A federated view will include courses in catalogs which are children of this catalog in the course catalog hierarchy.

CompliancemandatoryThis method is must be implemented.
MethoduseIsolatedCourseCatalogView
Description

Isolates the view for methods in this session. An isolated view restricts notifications to this course catalog only.

CompliancemandatoryThis method is must be implemented.
MethodreliableCourseNotifications
Description

Reliable notifications are desired. In reliable mode, notifications are to be acknowledged using acknowledgeCourseNotification() .

CompliancemandatoryThis method is must be implemented.
MethodunreliableCourseNotifications
Description

Unreliable notifications are desired. In unreliable mode, notifications do not need to be acknowledged.

CompliancemandatoryThis method is must be implemented.
MethodacknowledgeCourseNotification
Description

Acknowledge a course notification.

Parametersosid.id.IdnotificationIdthe Id of the notification
ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForNewCourses
Description

Register for notifications of new courses. CourseReceiver.newCourses() is invoked when a new Course appears in this course catalog.

ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedCourses
Description

Registers for notification of updated courses. CourseReceiver.changedCourses() is invoked when a course in this course catalog is changed.

ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForChangedCourse
Description

Registers for notification of an updated course. CourseReceiver.changedCourses() is invoked when the specified course in this course catalog is changed.

Parametersosid.id.IdcourseIdthe Id of the Course to monitor
ErrorsNULL_ARGUMENT courseId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedCourses
Description

Registers for notification of deleted courses. CourseReceiver.deletedCourses() is invoked when a course is deleted or removed from this course catalog.

ErrorsOPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedCourse
Description

Registers for notification of a deleted course. CourseReceiver.deletedCourses() is invoked when the specified course is deleted or removed from this course catalog.

Parametersosid.id.IdcourseIdthe Id of the Course to monitor
ErrorsNULL_ARGUMENT courseId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.