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

This session provides methods to re-assign Programs to CourseCatalogs. A Program may appear in multiple CourseCatalogs and removing the last reference to a Program 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 Program to another CourseCatalog is not a copy operation (eg: does not change its Id ).

MethodcanAssignPrograms
Description

Tests if this user can alter program/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.
MethodcanAssignProgramToCourseCatalog
Description

Tests if this user can alter program/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 lookup 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 program 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.
MethodgetAssignableCourseCatalogIdsForProgram
Description

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

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

Adds an existing Program to a CourseCatalog.

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

Removes a Program from a CourseCatalog.

Parametersosid.id.IdprogramIdthe Id of the Program
osid.id.IdcourseCatalogIdthe Id of the CourseCatalog
ErrorsNOT_FOUND programId or courseCatalogId not found or programId not assigned to courseCatalogId
NULL_ARGUMENT programId or courseCatalogId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignProgramToCourseCatalog
Description

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

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