Interface CourseOfferingCourseCatalogSession

All Superinterfaces:
AutoCloseable, Closeable, OsidSession, OsidSession

public interface CourseOfferingCourseCatalogSession extends OsidSession

This session provides methods to retrieve CourseOffering to CourseCatalog mappings. A CourseOffering may appear in multiple CourseCatalogs . Each catalog may have its own authorizations governing who is allowed to look at it.

This lookup session defines several views:

  • comparative view: elements may be silently omitted or re-ordered
  • plenary view: provides a complete result set or is an error condition
  • Method Details

    • canLookupCourseOfferingCourseCatalogMappings

      boolean canLookupCourseOfferingCourseCatalogMappings()
      Tests if this user can perform lookups of course offering/course catalog mappings. A return of true does not guarantee successful authorization. A return of false indicates that it is known lookup 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.
      Returns:
      false if looking up mappings is not authorized, true otherwise
      Compliance:
      mandatory - This method must be implemented.
    • useComparativeCourseOfferingCourseCatalogView

      void useComparativeCourseOfferingCourseCatalogView()
      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.
    • usePlenaryCourseOfferingCourseCatalogView

      void usePlenaryCourseOfferingCourseCatalogView()
      A complete view of the CourseOffering and CourseCatalog returns is desired. Methods will return what is requested or result in an error. This view is used when greater precision is desired at the expense of interoperability.
      Compliance:
      mandatory - This method is must be implemented.
    • getCourseOfferingIdsByCourseCatalog

      IdList getCourseOfferingIdsByCourseCatalog(Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the list of CourseOfferingIds associated with a CourseCatalog .
      Parameters:
      courseCatalogId - Id of the CourseCatalog
      Returns:
      list of related course offering Ids
      Throws:
      NotFoundException - courseCatalogId is not found
      NullArgumentException - courseCatalogId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCourseOfferingsByCourseCatalog

      CourseOfferingList getCourseOfferingsByCourseCatalog(Id courseCatalogId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the list of CourseOfferings associated with a CourseCatalog .
      Parameters:
      courseCatalogId - Id of the CourseCatalog
      Returns:
      list of related course offerings
      Throws:
      NotFoundException - courseCatalogId is not found
      NullArgumentException - courseCatalogId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCourseOfferingIdsByCourseCatalogs

      IdList getCourseOfferingIdsByCourseCatalogs(IdList courseCatalogIds) throws OperationFailedException, PermissionDeniedException
      Gets the list of CourseOfferingIds corresponding to a list of CourseCatalog objects.
      Parameters:
      courseCatalogIds - list of course catalog Ids
      Returns:
      list of course offering Ids
      Throws:
      NullArgumentException - courseCatalogIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCourseOfferingsByCourseCatalogs

      CourseOfferingList getCourseOfferingsByCourseCatalogs(IdList courseCatalogIds) throws OperationFailedException, PermissionDeniedException
      Gets the list of CourseOfferings corresponding to a list of CourseCatalog objects.
      Parameters:
      courseCatalogIds - list of course catalog Ids
      Returns:
      list of course offerings
      Throws:
      NullArgumentException - courseCatalogIds is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCourseCatalogIdsByCourseOffering

      IdList getCourseCatalogIdsByCourseOffering(Id courseOfferingId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the CourseCatalog Ids mapped to a CourseOffering .
      Parameters:
      courseOfferingId - Id of a CourseOffering
      Returns:
      list of course catalogs
      Throws:
      NotFoundException - courseOfferingId is not found
      NullArgumentException - courseOfferingId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.
    • getCourseCatalogsByCourseOffering

      CourseCatalogList getCourseCatalogsByCourseOffering(Id courseOfferingId) throws NotFoundException, OperationFailedException, PermissionDeniedException
      Gets the CourseCatalog objects mapped to a CourseOffering .
      Parameters:
      courseOfferingId - Id of a CourseOffering
      Returns:
      list of course catalogs
      Throws:
      NotFoundException - courseOfferingId is not found
      NullArgumentException - courseOfferingId is null
      OperationFailedException - unable to complete request
      PermissionDeniedException - authorization failure
      Compliance:
      mandatory - This method must be implemented.