Interface ProgramEntry

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

public interface ProgramEntry extends OsidRelationship

A ProgramEntry represents an academic record entry for a Program . The fields in the ProgramEntry may be for the entire enrollment through the academic career or specific to an academic Term .

A ProgramEntry is also an OsidRelationship between the student and Program . The effectiveness of the OsidRelationship describes the effectiveness of the academic record entry itself, not the student's enrollment in the Program . A ProgramEntry may be superseded with a manual update or forced entry and the temporal nature of the relationship provides a history of changes to the academic record.

  • Method Details

    • getStudentId

      Id getStudentId()
      Gets the Id of the Student .
      Returns:
      the student Id
      Compliance:
      mandatory - This method must be implemented.
    • getStudent

      Resource getStudent() throws OperationFailedException
      Gets the Student .
      Returns:
      the student
      Throws:
      OperationFailedException - unable to complete request
      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.
    • isPartOf

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

      Id getParentProgramEntryId()
      Gets the Id of the parent program entry.
      Returns:
      the parent program entry Id
      Throws:
      IllegalStateException - isPartOf() is false
      Compliance:
      mandatory - This method must be implemented.
    • getParentProgramEntry

      ProgramEntry getParentProgramEntry() throws OperationFailedException
      Gets the parent program entry.
      Returns:
      the parent program entry
      Throws:
      IllegalStateException - isPartOf() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • isMatriculationKnown

      boolean isMatriculationKnown()
      Tests if the matriculation status for this program entry is known.
      Returns:
      true if the matriculation status is known, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getEntranceDate

      DateTime getEntranceDate()
      Gets the date the student entered the program.
      Returns:
      the entrance date
      Throws:
      IllegalStateException - isMatriculationKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getEntranceTermId

      Id getEntranceTermId()
      Gets the Id of the entrance Term .
      Returns:
      the entrance term Id
      Throws:
      IllegalStateException - isMatriculationKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getEntranceTerm

      Term getEntranceTerm() throws OperationFailedException
      Gets the reporting time period the student entered the program.
      Returns:
      the entrance term
      Throws:
      IllegalStateException - isMatriculationKnown() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • isExpectedToComplete

      boolean isExpectedToComplete()
      Tests if the student is expected to complete the program at a known time.
      Returns:
      true if an expected completion is known, false otherwise
      Throws:
      IllegalStateException - isMatriculationKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • getExpectedCompletionDate

      DateTime getExpectedCompletionDate()
      Gets the date the student is expected to complete the program.
      Returns:
      the expected completion date
      Throws:
      IllegalStateException - isExpectedToComplete() is false
      Compliance:
      mandatory - This method must be implemented.
    • getExpectedCompletionTermId

      Id getExpectedCompletionTermId()
      Gets the Id of the expected completion Term .
      Returns:
      the expected completion term Id
      Throws:
      IllegalStateException - isExpectedToComplete() is false
      Compliance:
      mandatory - This method must be implemented.
    • getExpectedCompletionTerm

      Term getExpectedCompletionTerm() throws OperationFailedException
      Gets the reporting time period the student is expected to complete the program.
      Returns:
      the expected completion term
      Throws:
      IllegalStateException - isExpectedToComplete() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • isEnrolled

      boolean isEnrolled()
      Tests if the student is enrolled in the program.
      Returns:
      true if the student is enrolled, false otherwise
      Throws:
      IllegalStateException - isMatriculationKnown() is false
      Compliance:
      mandatory - This method must be implemented.
    • isActivelyEnrolled

      boolean isActivelyEnrolled()
      Tests if the student is active in the program.
      Returns:
      true if the student is actively enrolled, false otherwise
      Throws:
      IllegalStateException - isEnrolled() is false or isOnLeave() is true
      Compliance:
      mandatory - This method must be implemented.
    • isOnLeave

      boolean isOnLeave()
      Tests if the student has taken a leave of absence.
      Returns:
      true if the student is on leave, false otherwise
      Throws:
      IllegalStateException - isEnrolled() is false
      Compliance:
      mandatory - This method must be implemented.
    • hasWithdrawn

      boolean hasWithdrawn()
      Tests if the student withdrew from the program.
      Returns:
      true if the student withdrew, false otherwise
      Throws:
      IllegalStateException - isMatriculationKnown() is false or isEnrolled() is true
      Compliance:
      mandatory - This method must be implemented.
    • getWithdrawDate

      DateTime getWithdrawDate()
      Gets the date the student withdrew from the program.
      Returns:
      the withdraw date
      Throws:
      IllegalStateException - hasWithdrawn() is false
      Compliance:
      mandatory - This method must be implemented.
    • getWithdrawTermId

      Id getWithdrawTermId()
      Gets the Id of the withdraw Term .
      Returns:
      the withdraw term Id
      Throws:
      IllegalStateException - hasWithdrawn() is false
      Compliance:
      mandatory - This method must be implemented.
    • getWithdrawTerm

      Term getWithdrawTerm() throws OperationFailedException
      Gets the reporting time period in which the student withdrew from the program.
      Returns:
      the withdraw term
      Throws:
      IllegalStateException - hasWithdrawn() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • isComplete

      boolean isComplete()
      Tests if the program has been completed. If this entry is for summary information an a past term, isComplete() may be true .
      Returns:
      true if the program has been completed, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getCompletionDate

      DateTime getCompletionDate()
      Gets the date the student completed the program.
      Returns:
      the completion date
      Throws:
      IllegalStateException - isComplete() is false
      Compliance:
      mandatory - This method must be implemented.
    • getCompletionTermId

      Id getCompletionTermId()
      Gets the Id of the completion Term .
      Returns:
      the completion term Id
      Throws:
      IllegalStateException - isComplete() is false
      Compliance:
      mandatory - This method must be implemented.
    • getCompletionTerm

      Term getCompletionTerm() throws OperationFailedException
      Gets the reporting time period in which the student completed the program.
      Returns:
      the completion term
      Throws:
      IllegalStateException - isComplete() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getLevelId

      Id getLevelId()
      Gets the Id of the Grade indicating the student's level.
      Returns:
      the level Id
      Compliance:
      mandatory - This method must be implemented.
    • getLevel

      Grade getLevel() throws OperationFailedException
      Gets an indicator of the student's level or class year in the program.
      Returns:
      the level
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getStandingId

      Id getStandingId()
      Gets the Id of the Grade indicating the student's standing.
      Returns:
      the standing Id
      Compliance:
      mandatory - This method must be implemented.
    • getStanding

      Grade getStanding() throws OperationFailedException
      Gets an indicator of the student's standing in the program.
      Returns:
      the standing
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getAdmissionDate

      DateTime getAdmissionDate()
      Gets the date in which the student was admitted.
      Returns:
      the admission date
      Compliance:
      mandatory - This method must be implemented.
    • isForTerm

      boolean isForTerm()
      Tests if this entry is a progression entry applying to a single term. A program entry may provide summary information for the entire duration or for a single term. If isForTerm() is false , this entry applies to the entire enrollement period.
      Returns:
      true if the program has a term, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getTermId

      Id getTermId()
      Gets the Id of the Term .
      Returns:
      the term Id
      Throws:
      IllegalStateException - isForTerm() is false
      Compliance:
      mandatory - This method must be implemented.
    • getTerm

      Term getTerm() throws OperationFailedException
      Gets the Term .
      Returns:
      the term
      Throws:
      IllegalStateException - isForTerm() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getCreditScaleId

      Id getCreditScaleId()
      Gets the Id of the GradeSystem .
      Returns:
      the grade system Id
      Compliance:
      mandatory - This method must be implemented.
    • getCreditScale

      GradeSystem getCreditScale() throws OperationFailedException
      Gets the GradeSystem .
      Returns:
      the grade system
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getCreditsEarned

      BigDecimal getCreditsEarned()
      Gets the number of credits earned in this program or earned within the included term.
      Returns:
      the credits earned
      Compliance:
      mandatory - This method must be implemented.
    • hasGPA

      boolean hasGPA()
      Tests if a cumulative GPA in this program of the GPA for the included term.
      Returns:
      true if a GPA is available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getGPAScaleId

      Id getGPAScaleId()
      Gets the Id of the GradeSystem .
      Returns:
      the grade system Id
      Throws:
      IllegalStateException - hasGPA() is false
      Compliance:
      mandatory - This method must be implemented.
    • getGPAScale

      Gets the GradeSystem .
      Returns:
      the grade system
      Throws:
      IllegalStateException - hasGPA() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getGPA

      BigDecimal getGPA()
      Gets the cumulative GPA in this porgram or within the included term.
      Returns:
      the GPA
      Throws:
      IllegalStateException - hasGPA() is false
      Compliance:
      mandatory - This method must be implemented.
    • hasEnrollments

      boolean hasEnrollments()
      Tests if Enrollments are available.
      Returns:
      true if enrollments are available, false otherwise
      Compliance:
      mandatory - This method must be implemented.
    • getEnrollmentIds

      IdList getEnrollmentIds()
      Gets the Ids of the Enrollments .
      Returns:
      the enrollment Ids
      Throws:
      IllegalStateException - hasEnrollments() is false
      Compliance:
      mandatory - This method must be implemented.
    • getEnrollments

      EnrollmentList getEnrollments() throws OperationFailedException
      Gets the Enrollments .
      Returns:
      the enrollments
      Throws:
      IllegalStateException - hasEnrollments() is false
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getProgramEntryRecord

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