So, before we can get a full CourseManagementService implementation that works, we'll need to decide what to do with some some remaining object mappings
There are other things to decide too.
In the meantime, I am overriding the parent class implementations of unimplementable methods and logging errors
Here are some of those methods. Do we need these? I don't know.
There's a method that uses the courseset eid along with the academic session eid to get courseofferings.
public Set findCourseOfferings(String courseSetEid, String academicSessionEid)
We will also need memberships in order to implement
public Map findCourseOfferingRoles(String userEid) and public Map findCourseSetRoles(String userEid)
...since roles are only in memberships
WRT CourseSets
public List<CourseSet> findCourseSets(final String category)
the String could be anything. This could be coded as well: "dept:chemistry", "loose affiliation: extension"
The key to me is to not think of CourseSets as having to statically point to specific named node in our enterprise hierarchy (like 'School') but can be qualified a bit.
WRT Grading Schemes
public Map<String, String> getGradingSchemeDescriptions(Locale locale)
I suppose this will be easy once we figure out how to get Membership objects impl'd
And then there's and sql thing....
public Set<EnrollmentSet> findCurrentlyEnrolledEnrollmentSets(final String userId)
... currently uses this in the named query:
'select enr.enrollmentSet from EnrollmentCmImpl as enr where enr.userId=:userId and enr.dropped=false and (enr.enrollmentSet.courseOffering.startDate is null or enr.enrollmentSet.courseOffering.startDate <= current_date()) and (enr.enrollmentSet.courseOffering.endDate is null or enr.enrollmentSet.courseOffering.endDate >= current_date())'
... which would translate in one case to 'any user who has not dropped and belongs to an enrollmentset that has no start and no end date.'
I think we can safely remove the null checks here but ?
There's a similar issue with
public Set<EnrollmentSet> findCurrentlyInstructingEnrollmentSets(final String userId)
WRT sections:
public Set findEnrolledSections(String userEid) public Set findEnrolledSections(String userEid, String academicSessionEid)
And, this needs sections and Memberships:
public Map findSectionRoles(String userEid)
..that's all for now