| Interface | osid.course.CourseLookupSession | ||
|---|---|---|---|
| Implements | osid.OsidSession | ||
| Description | 
                 This session defines methods for retrieving courses. A 
                 This lookup session defines several views: 
  The methods   Courses may have an additional records indicated by their 
                respective record types. The record may not be accessed 
                through a cast of the   | ||
| Method | getCourseCatalogId | ||
| Description | 
                     Gets the   | ||
| Return | osid.id.Id | the  CourseCatalog Id  associated with this session  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | getCourseCatalog | ||
| Description | 
                     Gets the   | ||
| Return | osid.course.CourseCatalog | the course catalog | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | canLookupCourses | ||
| Description | 
                     Tests if this user can perform   | ||
| Return | boolean |  false  if lookup methods are not authorized,  true 
 otherwise  | |
| Compliance | mandatory | This method must be implemented. | |
| Method | useComparativeCourseView | ||
| Description | 
                     The returns from the lookup methods may omit or translate elements based on this session, such as authorization, and not result in an error. This view is used when greater interoperability is desired at the expense of precision.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | usePlenaryCourseView | ||
| Description | 
                     A complete view of the   | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useFederatedCourseCatalogView | ||
| Description | 
                     Federates the view for methods in this session. A federated view will include courses in catalogs which are children of this catalog in the course catalog hierarchy.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useIsolatedCourseCatalogView | ||
| Description | 
                     Isolates the view for methods in this session. An isolated view restricts retrievals to this course catalog only.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useActiveCourseView | ||
| Description | 
                     Only active courses are returned by methods in this session.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | useAnyStatusCourseView | ||
| Description | 
                     All courses of any active or inactive status are returned by methods in this session.  | ||
| Compliance | mandatory | This method is must be implemented. | |
| Method | getCourse | ||
| Description | 
                     Gets the    In active mode, courses are returned that are currently active. In any status mode, active and inactive courses are returned.  | ||
| Parameters | osid.id.Id | courseId | the  Id  of the  Course  to retrieve  | 
| Return | osid.course.Course | the returned  Course   | |
| Errors | NOT_FOUND | no  Course  found with the given  Id   |                 |
| NULL_ARGUMENT |  courseId  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getCoursesByIds | ||
| Description | 
                     Gets a    In active mode, courses are returned that are currently active. In any status mode, active and inactive courses are returned.  | ||
| Parameters | osid.id.IdList | courseIds | the list of  Ids  to retrieve  | 
| Return | osid.course.CourseList | the returned  CourseList  list  | |
| Errors | NOT_FOUND | an  Id was  not found  |                 |
| NULL_ARGUMENT |  courseIds  is  null   |                 ||
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getCoursesByGenusType | ||
| Description | 
                     Gets a    In active mode, courses are returned that are currently active. In any status mode, active and inactive courses are returned.  | ||
| Parameters | osid.type.Type | courseGenusType | a course genus type | 
| Return | osid.course.CourseList | the returned  CourseList  list  | |
| Errors | NULL_ARGUMENT |  courseGenusType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getCoursesByParentGenusType | ||
| Description | 
                     Gets a    In active mode, courses are returned that are currently active. In any status mode, active and inactive courses are returned.  | ||
| Parameters | osid.type.Type | courseGenusType | a course genus type | 
| Return | osid.course.CourseList | the returned  CourseList  list  | |
| Errors | NULL_ARGUMENT |  courseGenusType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getCoursesByRecordType | ||
| Description | 
                     Gets a  In plenary mode, the returned list contains all known courses or an error results. Otherwise, the returned list may contain only those courses that are accessible through this session. In active mode, courses are returned that are currently active. In any status mode, active and inactive courses are returned.  | ||
| Parameters | osid.type.Type | courseRecordType | a course record type | 
| Return | osid.course.CourseList | the returned  CourseList  list  | |
| Errors | NULL_ARGUMENT |  courseRecordType  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getCoursesByNumber | ||
| Description | 
                     Gets a  In plenary mode, the returned list contains all known courses or an error results. Otherwise, the returned list may contain only those courses that are accessible through this session. In active mode, courses are returned that are currently active. In any status mode, active and inactive courses are returned.  | ||
| Parameters | string | number | a course number | 
| Return | osid.course.CourseList | the returned  CourseList  list  | |
| Errors | NULL_ARGUMENT |  number  is  null   |                 |
| OPERATION_FAILED | unable to complete request | ||
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |
| Method | getCourses | ||
| Description | 
                     Gets all  In plenary mode, the returned list contains all known courses or an error results. Otherwise, the returned list may contain only those courses that are accessible through this session. In active mode, courses are returned that are currently active. In any status mode, active and inactive courses are returned.  | ||
| Return | osid.course.CourseList | a list of  Courses   | |
| Errors | OPERATION_FAILED | unable to complete request | |
| PERMISSION_DENIED | authorization failure | ||
| Compliance | mandatory | This method must be implemented. | |