public class Course extends AbstractClassWithContext<Request,Enrollment,Course.CourseContext> implements CanInheritContext<Request,Enrollment,Course.CourseContext>
Offering
) is offered under one or
more course offerings.
Modifier and Type | Class and Description |
---|---|
class |
Course.CourseContext |
sMaxSize
Constructor and Description |
---|
Course(long id,
String subjectArea,
String courseNumber,
Offering offering)
Constructor
|
Course(long id,
String subjectArea,
String courseNumber,
Offering offering,
int limit,
int projected)
Constructor
|
Modifier and Type | Method and Description |
---|---|
void |
addRequestGroup(RequestGroup group)
Add request group of this course.
|
void |
assigned(Assignment<Request,Enrollment> assignment,
Enrollment enrollment)
Called when an enrollment with this course is assigned to a request
|
Course.CourseContext |
createAssignmentContext(Assignment<Request,Enrollment> assignment)
Create a new assignment context for the given assignment.
|
boolean |
equals(Object o) |
double |
getArrHrsBound() |
String |
getCourseNumber()
Course number
|
String |
getCredit()
Get credit (Online Student Scheduling only)
|
Float |
getCreditValue()
Get course credit value (null if not set)
return course credit value
|
Set<Enrollment> |
getEnrollments(Assignment<Request,Enrollment> assignment)
Set of assigned enrollments
|
double |
getEnrollmentWeight(Assignment<Request,Enrollment> assignment,
Request excludeRequest)
Enrollment weight -- weight of all requests that are enrolled into this course,
excluding the given one.
|
long |
getId()
Course offering unique id
|
int |
getLimit()
Course offering limit
|
double |
getMaxEnrollmentWeight(Assignment<Request,Enrollment> assignment)
Maximal weight of a single enrollment in the course
|
double |
getMinEnrollmentWeight(Assignment<Request,Enrollment> assignment)
Minimal weight of a single enrollment in the course
|
Model<Request,Enrollment> |
getModel()
Get the model.
|
String |
getName()
Course offering name: subject area + course number
|
String |
getNote()
Course note
|
Offering |
getOffering()
Instructional offering which is offered under this course offering.
|
double |
getOnlineBound() |
double |
getPastBound() |
int |
getProjected()
Course offering projected number of students
|
Set<RequestGroup> |
getRequestGroups()
Lists all the request groups of this course
|
Set<CourseRequest> |
getRequests()
Set of course requests requesting this course
|
String |
getSubjectArea()
Subject area
|
String |
getTitle()
Course title
|
String |
getType()
Course type
|
boolean |
hasCreditValue()
True if this course has a credit value defined
|
int |
hashCode() |
Course.CourseContext |
inheritAssignmentContext(Assignment<Request,Enrollment> assignment,
Course.CourseContext parentContext)
Create a new assignment context for the given assignment.
|
void |
removeRequestGroup(RequestGroup group)
Remove request group from this course.
|
void |
setCredit(String credit)
Set credit (Online Student Scheduling only)
|
void |
setCreditValue(Float creditValue)
Set course credit value (null if not set)
|
void |
setLimit(int limit)
Set course offering limit
|
void |
setNote(String note)
Course note
|
void |
setTitle(String title)
Course title
|
void |
setType(String type)
Course type
|
String |
toString() |
void |
unassigned(Assignment<Request,Enrollment> assignment,
Enrollment enrollment)
Called when an enrollment with this course is unassigned from a request
|
getAssignmentContextReference, getContext, getContext, setAssignmentContextReference
public Course(long id, String subjectArea, String courseNumber, Offering offering)
id
- course offering unique idsubjectArea
- subject area (e.g., MA, CS, ENGL)courseNumber
- course number under the given subject areaoffering
- instructional offering which is offered under this course
offeringpublic Course(long id, String subjectArea, String courseNumber, Offering offering, int limit, int projected)
id
- course offering unique idsubjectArea
- subject area (e.g., MA, CS, ENGL)courseNumber
- course number under the given subject areaoffering
- instructional offering which is offered under this course
offeringlimit
- course offering limit (-1 for unlimited)projected
- projected demandpublic long getId()
public String getSubjectArea()
public String getCourseNumber()
public String getName()
public Offering getOffering()
public int getLimit()
public void setLimit(int limit)
limit
- course offering limit, -1 if unlimitedpublic int getProjected()
public void assigned(Assignment<Request,Enrollment> assignment, Enrollment enrollment)
assignment
- current assignmentenrollment
- assigned enrollmentpublic void unassigned(Assignment<Request,Enrollment> assignment, Enrollment enrollment)
assignment
- current assignmentenrollment
- unassigned enrollmentpublic Set<CourseRequest> getRequests()
public Model<Request,Enrollment> getModel()
AbstractClassWithContext
getModel
in class AbstractClassWithContext<Request,Enrollment,Course.CourseContext>
public double getEnrollmentWeight(Assignment<Request,Enrollment> assignment, Request excludeRequest)
Request.getWeight()
.assignment
- current assignmentexcludeRequest
- request to excludepublic Set<Enrollment> getEnrollments(Assignment<Request,Enrollment> assignment)
assignment
- current assignmentpublic double getMaxEnrollmentWeight(Assignment<Request,Enrollment> assignment)
assignment
- current assignmentpublic double getMinEnrollmentWeight(Assignment<Request,Enrollment> assignment)
assignment
- current assignmentpublic void addRequestGroup(RequestGroup group)
RequestGroup
.group
- request group to be addedpublic void removeRequestGroup(RequestGroup group)
group
- request group to be removedpublic Set<RequestGroup> getRequestGroups()
public void setCredit(String credit)
credit
- scheduling course creditpublic String getCredit()
public boolean hasCreditValue()
public void setCreditValue(Float creditValue)
creditValue
- course credit valuepublic Float getCreditValue()
public Course.CourseContext createAssignmentContext(Assignment<Request,Enrollment> assignment)
HasAssignmentContext
createAssignmentContext
in interface HasAssignmentContext<Request,Enrollment,Course.CourseContext>
assignment
- an assignment for which there needs to be an assignment contextpublic Course.CourseContext inheritAssignmentContext(Assignment<Request,Enrollment> assignment, Course.CourseContext parentContext)
CanInheritContext
inheritAssignmentContext
in interface CanInheritContext<Request,Enrollment,Course.CourseContext>
assignment
- an assignment for which there needs to be an assignment contextparentContext
- context of the parent assignmentpublic double getOnlineBound()
public double getArrHrsBound()
public double getPastBound()