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

This session defines methods to receive notifications on adds/changes to Program 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 ProgramLookupSession.

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.
MethodcanRegisterForProgramNotifications
Description

Tests if this user can register for Program 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 programs 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.
MethodreliableProgramNotifications
Description

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

CompliancemandatoryThis method is must be implemented.
MethodunreliableProgramNotifications
Description

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

CompliancemandatoryThis method is must be implemented.
MethodacknowledgeProgramNotification
Description

Acknowledge a credit notification.

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

Register for notifications of new programs. ProgramReceiver.newPrograms() is invoked when a new Program appears in this course catalog.

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

Registers for notification of updated programs. ProgramReceiver.changedPrograms() is invoked when a program in this course catalog is changed.

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

Registers for notification of an updated program. ProgramReceiver.changedPrograms() is invoked when the specified program in this course catalog is changed.

Parametersosid.id.IdprogramIdthe Id of the program to monitor
ErrorsNULL_ARGUMENT programId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodregisterForDeletedPrograms
Description

Registers for notification of deleted programs. ProgramReceiver.deletedPrograms() is invoked when a program is deleted or removed from this course catalog.

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

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

Parametersosid.id.IdprogramIdthe Id of the program to monitor
ErrorsNULL_ARGUMENT programId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.