Interface ProgramRequirement

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

public interface ProgramRequirement extends OsidRule, Aggregateable

A ProgramRequirement is an OsidRule and represents a requirement based on the completion or enrollment for a Program .

  • Method Details

    • getAltRequisites

      Requisite[] getAltRequisites()
      Gets any Requisites that may be substituted in place of this ProgramRequirement . All Requisites must be satisifed to be a substitute for this program requirement. Inactive Requisites are not evaluated but if no applicable requisite exists, then the alternate requisite is not satisifed.
      Returns:
      the alternate requisites
      Compliance:
      mandatory - This method must be implemented.
    • getProgramId

      Id getProgramId()
      Gets the Id of the Program .
      Returns:
      the program Id
      Compliance:
      mandatory - This method must be implemented.
    • getProgram

      Program getProgram() throws OperationFailedException
      Gets the Program .
      Returns:
      the program
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • requiresCompletion

      boolean requiresCompletion()
      Tests if this requirement requires completion of the program.
      Returns:
      true if a completion of the program is required, false if enrollment in the program is required
      Compliance:
      mandatory - This method must be implemented.
    • hasTimeframe

      boolean hasTimeframe()
      Tests if the program must be completed within the required duration.
      Returns:
      true if the program has to be completed within a required time, false if it could have been completed at any time in the past
      Compliance:
      mandatory - This method must be implemented.
    • getTimeframe

      Duration getTimeframe()
      Gets the timeframe in which the program has to be completed. A negative duration indicates the program had to be completed within the specified amount of time in the past. A posiitive duration indicates the program must be completed within the specified amount of time in the future. A zero duration indicates the program must be completed in the current term.
      Returns:
      the time frame
      Throws:
      IllegalStateException - hasTimeframe() is false
      Compliance:
      mandatory - This method must be implemented.
    • hasMinimumGPA

      boolean hasMinimumGPA()
      Tests if a minimum GPA above passing is required in the completion of the program or maintained at this level during enrollment.
      Returns:
      true if a minimum gpa is required, false if the course just has to be passed
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumGPASystemId

      Id getMinimumGPASystemId()
      Gets the scoring system Id for the minimum GPA.
      Returns:
      the scoring system Id
      Throws:
      IllegalStateException - hasMinimumGPA() is false
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumGPASystem

      GradeSystem getMinimumGPASystem() throws OperationFailedException
      Gets the scoring system for the minimum GPA.
      Returns:
      the scoring system
      Throws:
      IllegalStateException - hasMinimumGPA() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumGPA

      BigDecimal getMinimumGPA()
      Gets the minimum GPA.
      Returns:
      the minimum gpa
      Throws:
      IllegalStateException - hasMinimumGPA() is false
      Compliance:
      mandatory - This method must be implemented.
    • hasMinimumEarnedCredits

      boolean hasMinimumEarnedCredits()
      Tests if a minimum credits earned in the program is required.
      Returns:
      true if a minimum credits is required, false otehrwise
      Compliance:
      mandatory - This method must be implemented.
    • getMinimumEarnedCredits

      BigDecimal getMinimumEarnedCredits()
      Gets the minimum earned credits.
      Returns:
      the minimum credits
      Throws:
      IllegalStateException - hasMinimumEarnedCredits() is false
      Compliance:
      mandatory - This method must be implemented.
    • getProgramRequirementRecord

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