Class CanvasController
java.lang.Object
edu.ucsb.cs156.frontiers.controllers.ApiController
edu.ucsb.cs156.frontiers.controllers.CanvasController
@RestController
@RequestMapping("/api/courses/canvas")
public class CanvasController
extends ApiController
-
Constructor Summary
ConstructorsConstructorDescriptionCanvasController(CourseRepository courseRepository, CanvasService canvasService, TeamRepository teamRepository, JobService jobService, RosterStudentRepository rosterStudentRepository, UpdateUserService updateUserService, OrganizationMemberService organizationMemberService, TeamMemberRepository teamMemberRepository) -
Method Summary
Modifier and TypeMethodDescriptiongetCanvasGroupSets(Long courseId) loadCanvasTeams(Long courseId, String groupSetId) org.springframework.http.ResponseEntity<LoadResult> uploadRosterFromCanvas(Long courseId) Upload Roster students for Course from Canvas.Methods inherited from class edu.ucsb.cs156.frontiers.controllers.ApiController
doesCurrentUserHaveRole, genericMessage, getCurrentUser, handleDuplicateGroupException, handleEntityNotFoundException, handleIllegalArgument, handleNoLinkedOrgException, handleUnsupportedOperation, handleValidationException, isCurrentUserAdmin
-
Constructor Details
-
CanvasController
public CanvasController(CourseRepository courseRepository, CanvasService canvasService, TeamRepository teamRepository, JobService jobService, RosterStudentRepository rosterStudentRepository, UpdateUserService updateUserService, OrganizationMemberService organizationMemberService, TeamMemberRepository teamMemberRepository)
-
-
Method Details
-
uploadRosterFromCanvas
@PreAuthorize("@CourseSecurity.hasInstructorPermissions(#root, #courseId)") @PostMapping("/sync/students") public org.springframework.http.ResponseEntity<LoadResult> uploadRosterFromCanvas(@RequestParam Long courseId) Upload Roster students for Course from Canvas. It is important to keep the code in this method consistent with the code in uploadRosterStudentsCSV.- Parameters:
courseId- the internal course ID in Frontiers- Returns:
- LoadResult with counts of inserted, updated, dropped students and any rejected students
-
getCanvasGroupSets
@GetMapping("/groupsets") @PreAuthorize("@CourseSecurity.hasInstructorPermissions(#root, #courseId)") public List<CanvasGroupSet> getCanvasGroupSets(@RequestParam Long courseId) -
loadCanvasTeams
-