| 1 | package edu.ucsb.cs156.frontiers.jobs; | |
| 2 | ||
| 3 | import edu.ucsb.cs156.frontiers.entities.Course; | |
| 4 | import edu.ucsb.cs156.frontiers.entities.RosterStudent; | |
| 5 | import edu.ucsb.cs156.frontiers.enums.OrgStatus; | |
| 6 | import edu.ucsb.cs156.frontiers.models.OrgMember; | |
| 7 | import edu.ucsb.cs156.frontiers.repositories.RosterStudentRepository; | |
| 8 | import edu.ucsb.cs156.frontiers.services.OrganizationMemberService; | |
| 9 | import edu.ucsb.cs156.frontiers.services.jobs.JobContext; | |
| 10 | import edu.ucsb.cs156.frontiers.services.jobs.JobContextConsumer; | |
| 11 | import java.util.Optional; | |
| 12 | import lombok.Builder; | |
| 13 | ||
| 14 | @Builder | |
| 15 | public class UpdateOrgMembershipJob implements JobContextConsumer { | |
| 16 | Course course; | |
| 17 | OrganizationMemberService organizationMemberService; | |
| 18 | RosterStudentRepository rosterStudentRepository; | |
| 19 | ||
| 20 | @Override | |
| 21 | public void accept(JobContext ctx) throws Exception { | |
| 22 | ctx.log("Processing..."); | |
| 23 | Iterable<OrgMember> members = organizationMemberService.getOrganizationMembers(course); | |
| 24 | for (OrgMember member : members) { | |
| 25 | Optional<RosterStudent> student = | |
| 26 | rosterStudentRepository.findByCourseAndGithubId(course, member.getGithubId()); | |
| 27 |
1
1. accept : negated conditional → KILLED |
if (student.isPresent()) { |
| 28 | RosterStudent foundStudent = student.get(); | |
| 29 |
1
1. accept : removed call to edu/ucsb/cs156/frontiers/entities/RosterStudent::setOrgStatus → KILLED |
foundStudent.setOrgStatus(OrgStatus.MEMBER); |
| 30 | rosterStudentRepository.save(foundStudent); | |
| 31 | } | |
| 32 | } | |
| 33 | ctx.log("Done"); | |
| 34 | } | |
| 35 | } | |
Mutations | ||
| 27 |
1.1 |
|
| 29 |
1.1 |