UCSBSectionsController.java

  1. package edu.ucsb.cs156.courses.controllers;

  2. import com.fasterxml.jackson.databind.ObjectMapper;
  3. import edu.ucsb.cs156.courses.repositories.UserRepository;
  4. import edu.ucsb.cs156.courses.services.UCSBCurriculumService;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.http.ResponseEntity;
  7. import org.springframework.web.bind.annotation.GetMapping;
  8. import org.springframework.web.bind.annotation.RequestMapping;
  9. import org.springframework.web.bind.annotation.RequestParam;
  10. import org.springframework.web.bind.annotation.RestController;

  11. @RestController
  12. @RequestMapping("/api/sections")
  13. public class UCSBSectionsController {
  14.   private ObjectMapper mapper = new ObjectMapper();

  15.   @Autowired UserRepository userRepository;

  16.   @Autowired UCSBCurriculumService ucsbCurriculumService;

  17.   @GetMapping(value = "/basicsearch", produces = "application/json")
  18.   public ResponseEntity<String> basicsearch(
  19.       @RequestParam String qtr, @RequestParam String dept, @RequestParam String level)
  20.       throws Exception {

  21.     String body = ucsbCurriculumService.getSectionJSON(dept, qtr, level);

  22.     return ResponseEntity.ok().body(body);
  23.   }

  24.   @GetMapping(value = "/sectionsearch", produces = "application/json")
  25.   public ResponseEntity<String> sectionsearch(
  26.       @RequestParam String qtr, @RequestParam String enrollCode) throws Exception {

  27.     String body = ucsbCurriculumService.getSection(enrollCode, qtr);

  28.     return ResponseEntity.ok().body(body);
  29.   }
  30. }