OSID Logo
OSID Specifications
course program package
Version 3.1.0
Interfaceosid.course.program.ProgramCourseCatalogAssignmentSession
Implementsosid.OsidSession
Used Byosid.course.program.CourseProgramManager
osid.course.program.CourseProgramProxyManager
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
Compliancemandatory This 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.IdcourseCatalogId the Id of the CourseCatalog
Returnboolean false if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENT courseCatalogId is null
Compliancemandatory This 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.IdcourseCatalogId the Id of the CourseCatalog
Returnosid.id.IdList list of assignable course catalog Ids
ErrorsNULL_ARGUMENT courseCatalogId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This 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.IdcourseCatalogId the Id of the CourseCatalog
osid.id.IdprogramId the Id of the Program
Returnosid.id.IdList list of assignable course catalog Ids
ErrorsNULL_ARGUMENT courseCatalogId or programId is null
OPERATION_FAILED unable to complete request
Compliancemandatory This method must be implemented.
MethodassignProgramToCourseCatalog
Description

Adds an existing Program to a CourseCatalog.

Parametersosid.id.IdprogramId the Id of the Program
osid.id.IdcourseCatalogId the 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_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodunassignProgramFromCourseCatalog
Description

Removes a Program from a CourseCatalog.

Parametersosid.id.IdprogramId the Id of the Program
osid.id.IdcourseCatalogId the 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_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.
MethodreassignProgramToCourseCatalog
Description

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

Parametersosid.id.IdprogramId the Id of the Program
osid.id.IdfromCourseCatalogId the Id of the current CourseCatalog
osid.id.IdtoCourseCatalogId the Id of the destination CourseCatalog
ErrorsALREADY_EXISTS programId already assigned to toCourseCatalogId
NOT_FOUND programId, fromCourseCatalogId, or toCourseCatalogId not found or programId, not mapped to fromCourseCatalogId
NULL_ARGUMENT programId, fromCourseCatalogId, or toCourseCatalogId is null
OPERATION_FAILED unable to complete request
PERMISSION_DENIED authorization failure
Compliancemandatory This method must be implemented.