/* * 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; 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; import ru.ulstu.datamodel.ts.TimeSeries; import ru.ulstu.service.UtilService; @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 isAlive() { return new ResponseEntity<>(true, HttpStatus.OK); } @GetMapping("getRandom") @ApiOperation("Получить временной ряд рандомной длины") public ResponseEntity getRandomTimeSeries(@RequestParam("length") int length) { return new ResponseEntity<>(utilService.getRandomTimeSeries(length), HttpStatus.OK); } @GetMapping("getFromString") @ApiOperation("Преобразовать строку с разделителями во временной ряд") public ResponseEntity getTimeSeriesFromString(@RequestParam("tsString") String tsString) { return new ResponseEntity<>(utilService.getTimeSeriesFromString(tsString), HttpStatus.OK); } @PostMapping("timeSeriesToString") @ApiOperation("Преобразовать временной ряд в строку с разделителями") public ResponseEntity getTimeSeriesToString(@RequestBody TimeSeries timeSeries) { return new ResponseEntity<>(utilService.getTimeSeriesToString(timeSeries), HttpStatus.OK); } }