Interface CourseCourseCatalogAssignmentSession
- All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession
This session provides methods to re-assign Courses to
CourseCatalogs . A Course may appear in multiple
CourseCatalogs and removing the last reference to a Course 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 Course to another
CourseCatalog is not a copy operation (eg: does not change its Id
).
-
Method Summary
Modifier and TypeMethodDescriptionvoidassignCourseToCourseCatalog(Id courseId, Id courseCatalogId) Adds an existingCourseto aCourseCatalog.booleanTests if this user can alter course/course catalog mappings.booleancanAssignCourseToCourseCatalog(Id courseCatalogId) Tests if this user can alter course/course catalog mappings.getAssignableCourseCatalogIds(Id courseCatalogId) Gets a list of course catalogs including and under the given course catalog node in which any course can be assigned.getAssignableCourseCatalogIdsForCourse(Id courseCatalogId, Id courseId) Gets a list of course catalogs including and under the given course catalog node in which a specific course can be assigned.voidreassignCourseToCourseCatalog(Id courseId, Id fromCourseCatalogId, Id toCourseCatalogId) Moves aCoursefrom oneCourseCatalogto another.voidunassignCourseFromCourseCatalog(Id courseId, Id courseCatalogId) Removes aCoursefrom aCourseCatalog.Methods inherited from interface OsidSession
closeMethods inherited from interface OsidSession
getAuthenticatedAgent, getAuthenticatedAgentId, getClockRate, getDate, getEffectiveAgent, getEffectiveAgentId, getFormatType, getLocale, isAuthenticated, startTransaction, supportsTransactionsModifier and TypeMethodDescriptionGets the agent authenticated to this session.Gets theIdof the agent authenticated to this session.Gets the rate of the service clock.getDate()Gets the service date which may be the current date or the effective date in which this session exists.Gets the effective agent in use by this session.Gets theIdof the effective agent in use by this session.Gets theDisplayTextformatTypepreference in effect for this session.Gets the locale indicating the localization preferences in effect for this session.booleanTests if an agent is authenticated to this session.Starts a new transaction for this sesson.booleanTests for the availability of transactions.
-
Method Details
-
canAssignCourses
boolean canAssignCourses()Tests if this user can alter course/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 aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer assignment operations to unauthorized users.- Returns:
falseif mapping is not authorized,trueotherwise- Compliance:
mandatory- This method must be implemented.
-
canAssignCourseToCourseCatalog
Tests if this user can alter course/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 aPERMISSION_DENIED. This is intended as a hint to an application that may opt not to offer lookup operations to unauthorized users.- Parameters:
courseCatalogId- theIdof theCourseCatalog- Returns:
falseif mapping is not authorized,trueotherwise- Throws:
NullArgumentException-courseCatalogIdisnull- Compliance:
mandatory- This method must be implemented.
-
getAssignableCourseCatalogIds
Gets a list of course catalogs including and under the given course catalog node in which any course can be assigned.- Parameters:
courseCatalogId- theIdof theCourseCatalog- Returns:
- list of assignable course catalog
Ids - Throws:
NullArgumentException-courseCatalogIdisnullOperationFailedException- unable to complete request- Compliance:
mandatory- This method must be implemented.
-
getAssignableCourseCatalogIdsForCourse
IdList getAssignableCourseCatalogIdsForCourse(Id courseCatalogId, Id courseId) throws OperationFailedException Gets a list of course catalogs including and under the given course catalog node in which a specific course can be assigned.- Parameters:
courseCatalogId- theIdof theCourseCatalogcourseId- theIdof theCourse- Returns:
- list of assignable course catalog
Ids - Throws:
NullArgumentException-courseCatalogIdorcourseIdisnullOperationFailedException- unable to complete request- Compliance:
mandatory- This method must be implemented.
-
assignCourseToCourseCatalog
void assignCourseToCourseCatalog(Id courseId, Id courseCatalogId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Adds an existingCourseto aCourseCatalog.- Parameters:
courseId- theIdof theCoursecourseCatalogId- theIdof theCourseCatalog- Throws:
AlreadyExistsException-courseIdis already assigned tocourseCatalogIdNotFoundException-courseIdorcourseCatalogIdnot foundNullArgumentException-courseIdorcourseCatalogIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
unassignCourseFromCourseCatalog
void unassignCourseFromCourseCatalog(Id courseId, Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException Removes aCoursefrom aCourseCatalog.- Parameters:
courseId- theIdof theCoursecourseCatalogId- theIdof theCourseCatalog- Throws:
NotFoundException-courseIdorcourseCatalogIdnot found orcourseIdnot assigned tocourseCatalogIdNullArgumentException-courseIdorcourseCatalogIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-
reassignCourseToCourseCatalog
void reassignCourseToCourseCatalog(Id courseId, Id fromCourseCatalogId, Id toCourseCatalogId) throws AlreadyExistsException, NotFoundException, OperationFailedException, PermissionDeniedException Moves aCoursefrom oneCourseCatalogto another. Mappings to otherCourseCatalogsare unaffected.- Parameters:
courseId- theIdof theCoursefromCourseCatalogId- theIdof the currentCourseCatalogtoCourseCatalogId- theIdof the destinationCourseCatalog- Throws:
AlreadyExistsException-courseIdalready assigned totoCourseCatalogIdNotFoundException-courseId, fromCourseCatalogId, ortoCourseCatalogIdnot found orcourseIdnot mapped tofromCourseCatalogIdNullArgumentException-courseId, fromCourseCatalogId, ortoCourseCatalogIdisnullOperationFailedException- unable to complete requestPermissionDeniedException- authorization failure- Compliance:
mandatory- This method must be implemented.
-