time-series-smoothing/src/main/java/ru/ulstu/controller/UtilController.java

56 lines
2.2 KiB
Java
Raw Normal View History

2021-06-01 14:05:19 +04:00
/*
* Copyright (C) 2021 Anton Romanov - All Rights Reserved
* You may use, distribute and modify this code, please write to: romanov73@gmail.com.
*
*/
package ru.ulstu.controller;
2021-05-27 14:25:00 +04:00
import io.swagger.annotations.ApiOperation;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import ru.ulstu.configuration.ApiConfiguration;
2021-06-01 14:05:19 +04:00
import ru.ulstu.datamodel.ts.TimeSeries;
import ru.ulstu.service.UtilService;
2021-05-27 14:25:00 +04:00
@RestController
@RequestMapping(ApiConfiguration.API_1_0)
public class UtilController {
private final UtilService utilService;
public UtilController(UtilService utilService) {
this.utilService = utilService;
}
@GetMapping("isAlive")
@ApiOperation("Проверка сервиса")
public ResponseEntity<Boolean> isAlive() {
return new ResponseEntity<>(true, HttpStatus.OK);
}
@GetMapping("getRandom")
@ApiOperation("Получить временной ряд рандомной длины")
public ResponseEntity<TimeSeries> getRandomTimeSeries(@RequestParam("length") int length) {
return new ResponseEntity<>(utilService.getRandomTimeSeries(length), HttpStatus.OK);
}
@GetMapping("getFromString")
@ApiOperation("Преобразовать строку с разделителями во временной ряд")
public ResponseEntity<TimeSeries> getTimeSeriesFromString(@RequestParam("tsString") String tsString) {
return new ResponseEntity<>(utilService.getTimeSeriesFromString(tsString), HttpStatus.OK);
}
@PostMapping("timeSeriesToString")
@ApiOperation("Преобразовать временной ряд в строку с разделителями")
public ResponseEntity<String> getTimeSeriesToString(@RequestBody TimeSeries timeSeries) {
return new ResponseEntity<>(utilService.getTimeSeriesToString(timeSeries), HttpStatus.OK);
}
}