Interface CourseSearchSession

All Superinterfaces:
AutoCloseable, Closeable, CourseQuerySession, OsidSession, OsidSession

public interface CourseSearchSession extends CourseQuerySession

This session provides methods for searching among Courses . The search query is constructed using the CourseQuery .

getCoursesByQuery() is the basic search method and returns a list of Courses . A more advanced search may be performed with getCoursesBySearch() .It accepts a CourseSearch in addition to the query for the purpose of specifying additional options affecting the entire search, such as ordering. getCoursesBySearch() returns a CourseSearchResults that can be used to access the resulting CourseList or be used to perform a search within the result set through CourseSearch .

This session defines views that offer differing behaviors for searching.

  • federated course catalog view: searches include courses in course catalogs of which this course catalog is an ancestor in the course catalog hierarchy
  • isolated course catalog view: searches are restricted to courses in this course catalog

Courses may have a query record indicated by their respective record types. The query record is accessed via the CourseQuery .

  • Method Details

    • getCourseSearch

      CourseSearch getCourseSearch()
      Gets a course search.
      Returns:
      the course search
      Compliance:
      mandatory - This method must be implemented.
    • getCourseSearchOrder

      CourseSearchOrder getCourseSearchOrder()
      Gets a course search order. The CourseSearchOrder is supplied to a CourseSearch to specify the ordering of results.
      Returns:
      the course search order
      Compliance:
      mandatory - This method must be implemented.
    • getCoursesBySearch

      CourseSearchResults getCoursesBySearch(CourseQuery courseQuery, CourseSearch courseSearch) throws OperationFailedException, PermissionDeniedException
      Gets the search results matching the given search query using the given search.
      Parameters:
      courseQuery - the course query
      courseSearch - the course search
      Returns:
      the course search results
      Throws:
      NullArgumentException - courseQuery or courseSearch is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      UnsupportedException - courseQuery or courseSearch is not of this service
      Compliance:
      mandatory - This method must be implemented.
    • getCourseQueryFromInspector

      CourseQuery getCourseQueryFromInspector(CourseQueryInspector courseQueryInspector)
      Gets a course query from an inspector. The inspector is available from a CourseSearchResults .
      Parameters:
      courseQueryInspector - a course query inspector
      Returns:
      the course query
      Throws:
      NullArgumentException - courseQueryInspector is null
      UnsupportedException - courseQueryInspector is not of this service
      Compliance:
      mandatory - This method must be implemented.