Interface Course

All Superinterfaces:
Browsable, Extensible, Identifiable, Operable, OsidObject

public interface Course extends OsidObject, Operable

A Course represents a canonical course that manages the curriculum of learning units. A Course is composed of ActivityUnits that manage the details of the curriculum and instantiated for offering through the creation of a CourseOffering .

  • Method Details

    • getTitle

      DisplayText getTitle()
      Gets the formal title of this course. It may be the same as the display name or it may be used to more formally label the course. A display name might be Physics 102 where the title is Introduction to Electromagentism.
      Returns:
      the course title
      Compliance:
      mandatory - This method must be implemented.
    • getNumber

      String getNumber()
      Gets the course number which is a label generally used to index the course in a catalog, such as T101 or 16.004.
      Returns:
      the course number
      Compliance:
      mandatory - This method must be implemented.
    • hasSponsors

      boolean hasSponsors()
      Tests if this course has sponsors.
      Returns:
      true if this course has sponsors, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getSponsorIds

      IdList getSponsorIds()
      Gets the sponsor Ids .
      Returns:
      the sponsor Ids
      Throws:
      IllegalStateException - hasSponsors() is false
      Compliance:
      mandatory - This method must be implemented.
    • getSponsors

      Gets the sponsors.
      Returns:
      the sponsors
      Throws:
      IllegalStateException - hasSponsors() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getCreditAmountIds

      IdList getCreditAmountIds()
      Gets the credits in which this course can be offered. The credits are expressed as Grades .
      Returns:
      the grade Ids
      Compliance:
      mandatory - This method must be implemented.
    • getCreditAmounts

      GradeList getCreditAmounts() throws OperationFailedException
      Gets the credits in which this course can be offered. The credits are expressed as Grades .
      Returns:
      the credits
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getPrerequisitesInfo

      DisplayText getPrerequisitesInfo()
      Gets the an informational text for the course prerequisites.
      Returns:
      the course prerequisites
      Compliance:
      mandatory - This method must be implemented.
    • hasPrerequisites

      boolean hasPrerequisites()
      Tests if this course has Requisites for the course prerequisites.
      Returns:
      true if this course has prerequisites false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getPrerequisiteIds

      IdList getPrerequisiteIds()
      Gets the requisite Ids for the course prerequisites.
      Returns:
      the requisite Ids
      Throws:
      IllegalStateException - hasPrerequisites() is false
      Compliance:
      mandatory - This method must be implemented.
    • getPrerequisites

      RequisiteList getPrerequisites() throws OperationFailedException
      Gets the requisites for the course prerequisites. Each Requisite is an AND term such that all Requisites must be true for the prerequisites to be satisifed.
      Returns:
      the requisites
      Throws:
      IllegalStateException - hasPrerequisites() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getConcurrentCourseIds

      IdList getConcurrentCourseIds()
      Gets the Id list of courses this Course must be taken concurrently.
      Returns:
      the list of concurrent course Ids
      Compliance:
      mandatory - This method must be implemented.
    • getConcurrentCourses

      CourseList getConcurrentCourses() throws OperationFailedException
      The list of Courses this Course must be taken concurrently. Courses which can be completed independently but allowed to be taken simultaneously is described using Requisites .
      Returns:
      the list of concurrent courses
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getLevelIds

      IdList getLevelIds()
      Gets the grade level Ids of this course. Multiple levels may exist for different systems.
      Returns:
      the returned list of grade level Ids
      Compliance:
      mandatory - This method must be implemented.
    • getLevels

      Gets the grade levels of this course. Multiple levels may exist for different systems.
      Returns:
      the returned list of grade levels
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • isGraded

      boolean isGraded()
      Tests if this course is graded.
      Returns:
      true if this course is graded, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getGradingOptionIds

      IdList getGradingOptionIds()
      Gets the various grading option Ids available to register in this course.
      Returns:
      the returned list of grading option Ids
      Throws:
      IllegalStateException - isGraded() is false
      Compliance:
      mandatory - This method must be implemented.
    • getGradingOptions

      GradeSystemList getGradingOptions() throws OperationFailedException
      Gets the various grading options available to register in this course.
      Returns:
      the returned list of grading options
      Throws:
      IllegalStateException - isGraded() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • hasLearningObjectives

      boolean hasLearningObjectives()
      Tests if this course has associated learning objectives.
      Returns:
      true if this course has a learning objective, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getLearningObjectiveIds

      IdList getLearningObjectiveIds()
      Gets the overall learning objective Ids for this course.
      Returns:
      Ids of the l earning objectives
      Throws:
      IllegalStateException - hasLearningObjectives() is false
      Compliance:
      mandatory - This method is must be implemented.
    • getLearningObjectives

      ObjectiveList getLearningObjectives() throws OperationFailedException
      Gets the overall learning objectives for this course.
      Returns:
      the learning objectives
      Throws:
      IllegalStateException - hasLearningObjectives() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • hasTargetAudiences

      boolean hasTargetAudiences()
      Tests if this course has associated target audiences.
      Returns:
      true if this course has a target audience, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getTargetAudienceIds

      IdList getTargetAudienceIds()
      Gets the target audience Ids for this course.
      Returns:
      the target audience Ids
      Throws:
      IllegalStateException - hasTargetAudiences() is false
      Compliance:
      mandatory - This method must be implemented.
    • getTargetAudiences

      ResourceList getTargetAudiences() throws OperationFailedException
      Gets the target audiences for this course.
      Returns:
      the target audiences
      Throws:
      IllegalStateException - hasTargetAudiences() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getCourseRecord

      CourseRecord getCourseRecord(Type courseRecordType) throws OperationFailedException
      Gets the course record corresponding to the given Course record Type .This method is used to retrieve an object implementing the requested record. The courseRecordType may be the Type returned in getRecordTypes() or any of its parents in a Type hierarchy where hasRecordType(courseRecordType) is true .
      Parameters:
      courseRecordType - the type of course record to retrieve
      Returns:
      the course record
      Throws:
      NullArgumentException - courseRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(courseRecordType) is false
      Compliance:
      mandatory - This method must be implemented.