package org.okip.okifunc.classadmin.api;

public interface CourseOffering
extends java.io.Serializable
{
    CanonicalCourse[] InCanonicalCourses();
    public void setTerm(Term term) throws ClassadminException;
    public Term getTerm() throws ClassadminException;
    public void setHonors(boolean honors) throws ClassadminException;
    public boolean getHonors() throws ClassadminException;
    public void setWaitingListOffered(boolean waitingListOffered) throws ClassadminException;
    public boolean getWaitingListOffered() throws ClassadminException;
    public void setMinimumGradeForTransferCredit(float minimumGradeForTransferCredit) throws ClassadminException;
    public float getMinimumGradeForTransferCredit() throws ClassadminException;
    public void addSection(CourseSection section) throws ClassadminException;
    public void removeSection(CourseSection section) throws ClassadminException;
    public CourseSection[] getSection() throws ClassadminException;
    public void addOfferingLearningAsset(LearningAsset offeringLearningAsset) throws ClassadminException;
    public void removeOfferingLearningAsset(LearningAsset offeringLearningAsset) throws ClassadminException;
    public LearningAsset[] getOfferingLearningAsset() throws ClassadminException;
    public void addSectionType(SectionType sectionType) throws ClassadminException;
    public void removeSectionType(SectionType sectionType) throws ClassadminException;
    public SectionType[] getSectionType() throws ClassadminException;
    public void addPersonRole(PersonRole personRole) throws ClassadminException;
    public void removePersonRole(PersonRole personRole) throws ClassadminException;
    public PersonRole[] getPersonRole() throws ClassadminException;
    public void addGradingOption(GradingOption gradingOption) throws ClassadminException;
    public void removeGradingOption(GradingOption gradingOption) throws ClassadminException;
    public GradingOption[] getGradingOption() throws ClassadminException;
    public void addLabeledDate(LabeledDate labeledDate) throws ClassadminException;
    public void removeLabeledDate(LabeledDate labeledDate) throws ClassadminException;
    public LabeledDate[] getLabeledDate() throws ClassadminException;
}
