Interface ProgramOffering

All Superinterfaces:
Browsable, Extensible, Identifiable, OsidObject, OsidRelationship, Temporal

public interface ProgramOffering extends OsidRelationship

A ProgramOffering represents a learning unit offered duing a Term . Scheduling information of a ProgramOffering is maintained at the Activity level resulting in a composite RecurringEvent . A separate Calendar of activities can be made available through orchestration of the Calendaring OSID.

  • Method Details

    • getProgramId

      Id getProgramId()
      Gets the canonical program Id associated with this program offering.
      Returns:
      the program Id
      Compliance:
      mandatory - This method must be implemented.
    • getProgram

      Program getProgram() throws OperationFailedException
      Gets the canonical program associated with this program offering.
      Returns:
      the program
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getTermId

      Id getTermId()
      Gets the Id of the Term of this offering.
      Returns:
      the Term Id
      Compliance:
      mandatory - This method must be implemented.
    • getTerm

      Term getTerm() throws OperationFailedException
      Gets the Term of this offering.
      Returns:
      the term
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getTitle

      DisplayText getTitle()
      Gets the formal title of this program offering. It may be the same as the display name or it may be used to more formally label the program. A display name might be Course 16 where the title is Aeronautics & Astronautics.
      Returns:
      the program title
      Compliance:
      mandatory - This method must be implemented.
    • getNumber

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

      boolean hasSponsors()
      Tests if this program offering has sponsors.
      Returns:
      true if this program offering 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.
    • isPartOf

      boolean isPartOf()
      Tests if this program offering is part of another program offering.
      Returns:
      true if this program offering has a parent, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getParentProgramOfferingId

      Id getParentProgramOfferingId()
      Gets the Id for the parent program offering.
      Returns:
      the parent program offering Id
      Throws:
      IllegalStateException - isPartOf() is false
      Compliance:
      mandatory - This method must be implemented.
    • getParentProgramOffering

      ProgramOffering getParentProgramOffering() throws OperationFailedException
      Gets the parent program offering.
      Returns:
      the parent program offering
      Throws:
      IllegalStateException - isPartOf() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getLearningObjectiveIds

      IdList getLearningObjectiveIds()
      Gets the Objective Ids for the program.
      Returns:
      the learning objective Ids
      Compliance:
      mandatory - This method must be implemented.
    • getLearningObjectives

      ObjectiveList getLearningObjectives() throws OperationFailedException
      Gets the learning objectives for the program.
      Returns:
      the learning objectives
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • hasRestrictedAudiences

      boolean hasRestrictedAudiences()
      Tests if this program offering has restricted audiences.
      Returns:
      true if this program offering has a restricted audience, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getRestrictedAudienceIds

      IdList getRestrictedAudienceIds()
      Gets the restricted audience Ids for this program offering.
      Returns:
      the restricted audience Ids
      Throws:
      IllegalStateException - hasRestrictedAudiences() is false
      Compliance:
      mandatory - This method must be implemented.
    • getRestrictedAudiences

      ResourceList getRestrictedAudiences() throws OperationFailedException
      Gets the restricted audiences for this program offering.
      Returns:
      the restricted audiences
      Throws:
      IllegalStateException - hasRestrictedAudiences() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getCompletionRequirementsInfo

      DisplayText getCompletionRequirementsInfo()
      Gets the an informational string for the program completion.
      Returns:
      the program completion
      Compliance:
      mandatory - This method must be implemented.
    • hasCompletionRequirements

      boolean hasCompletionRequirements()
      Tests if this program has a rule for the program completion.
      Returns:
      true if this program has a completion rule, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getCompletionRequirementIds

      IdList getCompletionRequirementIds()
      Gets the Requisite Ids for the program completion.
      Returns:
      the completion requisite Ids
      Throws:
      IllegalStateException - hasCompletionRequirements() is false
      Compliance:
      mandatory - This method must be implemented.
    • getCompletionRequirements

      RequisiteList getCompletionRequirements() throws OperationFailedException
      Gets the requisites for the program completion. Each Requisite is an AND term and must be true for the requirements to be satisifed.
      Returns:
      the completion requisites
      Throws:
      IllegalStateException - hasCompletionRequirements() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • earnsCredentials

      boolean earnsCredentials()
      Tests if completion of this program results in credentials awarded.
      Returns:
      true if this program earns credentials, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getCredentialIds

      IdList getCredentialIds()
      Gets the awarded credential Ids .
      Returns:
      the returned list of credential Ids
      Throws:
      IllegalStateException - earnsCredentials() is false
      Compliance:
      mandatory - This method must be implemented.
    • getCredentials

      CredentialList getCredentials() throws OperationFailedException
      Gets the awarded credentials.
      Returns:
      the returned list of credentials
      Throws:
      IllegalStateException - earnsCredentials() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • requiresRegistration

      boolean requiresRegistration()
      Tests if this program offering requires advanced registration.
      Returns:
      true if this progranm offering requires advance registration, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumSeats

      long getMinimumSeats()
      Gets the minimum number of students this offering can have.
      Returns:
      the minimum seats
      Throws:
      IllegalStateException - requiresRegistration() is false
      Compliance:
      mandatory - This method must be implemented.
    • getMaximumSeats

      long getMaximumSeats()
      Gets the maximum number of students this offering can have.
      Returns:
      the maximum seats
      Throws:
      IllegalStateException - requiresRegistration() is false
      Compliance:
      mandatory - This method must be implemented.
    • getURL

      String getURL()
      Gets an external resource, such as a class web site, associated with this offering.
      Returns:
      a URL string
      Compliance:
      mandatory - This method must be implemented.
    • getProgramOfferingRecord

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