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

This session provides methods to re-assign Lessons to Course Catalogs. A Lesson may map to multiple CourseCatalogs and removing the last reference to a Lesson is the equivalent of deleting it. Each CourseCatalog may have its own authorizations governing who is allowed to operate on it.

Adding a reference of a Lesson to another CourseCatalog is not a copy operation (eg: does not change its Id ).

MethodcanAssignLessons
Description

Tests if this user can alter lesson/course catalog mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping 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 assignment operations to unauthorized users.

Returnboolean false if mapping is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanAssignLessonsToCourseCatalog
Description

Tests if this user can alter lesson/course catalog mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known mapping 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 assignment operations to unauthorized users.

Parametersosid.id.IdcourseCatalogIdthe Id of the CourseCatalog
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT courseCatalogId is null
CompliancemandatoryThis method must be implemented.
MethodgetAssignableCourseCatalogIds
Description

Gets a list of course catalogs including and under the given course catalog node in which any lesson can be assigned.

Parametersosid.id.IdcourseCatalogIdthe Id of the CourseCatalog
Returnosid.id.IdListlist of assignable course catalog Ids
ErrorsNULL_ARGUMENT courseCatalogId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodgetAssignableCourseCatalogIdsForLesson
Description

Gets a list of course catalogs including and under the given course catalog node in which a specific lesson can be assigned.

Parametersosid.id.IdcourseCatalogIdthe Id of the CourseCatalog
osid.id.IdlessonIdthe Id of the Lesson
Returnosid.id.IdListlist of assignable course catalog Ids
ErrorsNULL_ARGUMENT courseCatalogId or lessonId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignLessonToCourseCatalog
Description

Adds an existing Lesson to an CourseCatalog.

Parametersosid.id.IdlessonIdthe Id of the Lesson
osid.id.IdcourseCatalogIdthe Id of the CourseCatalog
ErrorsALREADY_EXISTS lessonId is already assigned to courseCatalogId
NOT_FOUND lessonId or courseCatalogId not found
NULL_ARGUMENT lessonId or courseCatalogId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignLessonFromCourseCatalog
Description

Removes a Lesson from an CourseCatalog.

Parametersosid.id.IdlessonIdthe Id of the Lesson
osid.id.IdcourseCatalogIdthe Id of the CourseCatalog
ErrorsNOT_FOUND lessonId or courseCatalogId not found or lessonId not assigned to courseCatalogId
NULL_ARGUMENT lessonId or courseCatalogId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignLessonToCourseCatalog
Description

Moves a Lesson from one CourseCatalog to another. Mappings to other CourseCatalogs are unaffected.

Parametersosid.id.IdlessonIdthe Id of the Lesson
osid.id.IdfromCourseCatalogIdthe Id of the current CourseCatalog
osid.id.IdtoCourseCatalogIdthe Id of the destination CourseCatalog
ErrorsNOT_FOUND lessonId, fromCourseCatalogId, or toCourseCatalogId not found or lessonId not mapped to fromCourseCatalogId
NULL_ARGUMENT lessonId, fromCourseCatalogId, or toCourseCatalogId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.