1 | package edu.ucsb.cs156.spring.backenddemo.controllers; | |
2 | ||
3 | import org.springframework.web.bind.annotation.RestController; | |
4 | ||
5 | import edu.ucsb.cs156.spring.backenddemo.services.TidesQueryService; | |
6 | import lombok.extern.slf4j.Slf4j; | |
7 | ||
8 | import org.springframework.web.bind.annotation.GetMapping; | |
9 | import org.springframework.web.bind.annotation.RequestMapping; | |
10 | import org.springframework.web.bind.annotation.RequestParam; | |
11 | import org.springframework.beans.factory.annotation.Autowired; | |
12 | import org.springframework.http.ResponseEntity; | |
13 | ||
14 | import com.fasterxml.jackson.core.JsonProcessingException; | |
15 | import com.fasterxml.jackson.databind.ObjectMapper; | |
16 | ||
17 | import io.swagger.v3.oas.annotations.Operation; | |
18 | import io.swagger.v3.oas.annotations.Parameter; | |
19 | import io.swagger.v3.oas.annotations.tags.Tag; | |
20 | ||
21 | @Tag(name="Tides Information from NOAA https://api.tidesandcurrents.noaa.gov/api/prod/") | |
22 | @Slf4j | |
23 | @RestController | |
24 | @RequestMapping("/api/tides") | |
25 | public class TidesController { | |
26 | | |
27 | ObjectMapper mapper = new ObjectMapper(); | |
28 | ||
29 | @Autowired | |
30 | TidesQueryService tidesQueryService; | |
31 | ||
32 | @Operation(summary = "Get water level for date range, in local time.", description = "For station id, see: https://tidesandcurrents.noaa.gov/tide_predictions.html?gid=1393") | |
33 | @GetMapping("/get") | |
34 | public ResponseEntity<String> getTides( | |
35 | @Parameter(name="beginDate", description="beginDate in format yyyymmdd") @RequestParam String beginDate, | |
36 | @Parameter(name="endDate", description="endDate in format yyyymmdd") @RequestParam String endDate, | |
37 | @Parameter(name="station", description="station", example = "9411340") @RequestParam String station | |
38 | ) throws JsonProcessingException { | |
39 | log.info("getTides: beginDate={} endDate={} station={}", beginDate, endDate, station); | |
40 | String result = tidesQueryService.getJSON(beginDate, endDate, station); | |
41 |
1
1. getTides : replaced return value with null for edu/ucsb/cs156/spring/backenddemo/controllers/TidesController::getTides → KILLED |
return ResponseEntity.ok().body(result); |
42 | } | |
43 | ||
44 | } | |
45 | ||
Mutations | ||
41 |
1.1 |