OSID Logo
OSID Specifications
course chronicle package
Version 3.0.0
Interfaceosid.course.chronicle.ProgramEntryCourseCatalogAssignmentSession
Implementsosid.OsidSession
Used Byosid.course.chronicle.CourseChronicleManager
osid.course.chronicle.CourseChronicleProxyManager
Description

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

MethodcanAssignProgramEntries
Description

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

Returnbooleanfalse if mapping is not authorized, true otherwise
CompliancemandatoryThis method must be implemented.
MethodcanAssignProgramEntryToCourseCatalog
Description

Tests if this user can alter program entry/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
Returnbooleanfalse if mapping is not authorized, true otherwise
ErrorsNULL_ARGUMENTcourseCatalogId 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 entry can be assigned.

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

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

Parametersosid.id.IdcourseCatalogIdthe Id of the CourseCatalog
osid.id.IdprogramEntryIdthe Id of the ProgramEntry
Returnosid.id.IdListlist of assignable course catalog Ids
ErrorsNULL_ARGUMENTcourseCatalogId or programEntryId is null
OPERATION_FAILEDunable to complete request
CompliancemandatoryThis method must be implemented.
MethodassignProgramEntryToCourseCatalog
Description

Adds an existing ProgramEntry to a CourseCatalog .

Parametersosid.id.IdprogramEntryIdthe Id of the ProgramEntry
osid.id.IdcourseCatalogIdthe Id of the CourseCatalog
ErrorsALREADY_EXISTSprogramEntryId is already assigned to courseCatalogId
NOT_FOUNDprogramEntryId or courseCatalogId not found
NULL_ARGUMENTprogramEntryId or courseCatalogId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodunassignProgramEntryFromCourseCatalog
Description

Removes a ProgramEntry from a CourseCatalog .

Parametersosid.id.IdprogramEntryIdthe Id of the ProgramEntry
osid.id.IdcourseCatalogIdthe Id of the CourseCatalog
ErrorsNOT_FOUNDprogramEntryId or courseCatalogId not found or programEntryId not assigned to courseCatalogId
NULL_ARGUMENTprogramEntryId or courseCatalogId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.
MethodreassignProgramEntryToCourseCatalog
Description

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

Parametersosid.id.IdprogramEntryIdthe Id of the ProgramEntry
osid.id.IdfromCourseCatalogIdthe Id of the current CourseCatalog
osid.id.IdtoCourseCatalogIdthe Id of the destination CourseCatalog
ErrorsALREADY_EXISTSprogramEntryId already assigned to toCourseCatalogId
NOT_FOUNDprogramEntryId, fromCourseCatalogId , or toCourseCatalogId not found or programEntryId not mapped to fromCourseCatalogId
NULL_ARGUMENTprogramEntryId, fromCourseCatalogId , or toCourseCatalogId is null
OPERATION_FAILEDunable to complete request
PERMISSION_DENIEDauthorization failure
CompliancemandatoryThis method must be implemented.