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