From d2d39a65f7ec1090ed25c11503889d393db48d62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Diana=20Gul=C4=8D=C3=ADkov=C3=A1?= <xgulcik@fi.muni.cz> Date: Mon, 13 Mar 2023 22:34:04 +0100 Subject: [PATCH] controller --- car_manager/pom.xml | 17 ++++++++ .../carmanager/facade/CarManagerFacade.java | 7 ++++ .../carmanager/rest/CarManagerController.java | 40 +++++++++++++++++++ .../carmanager/service/CarManagerService.java | 7 ++++ 4 files changed, 71 insertions(+) create mode 100644 car_manager/src/main/java/cz/muni/pa165/carmanager/facade/CarManagerFacade.java create mode 100644 car_manager/src/main/java/cz/muni/pa165/carmanager/rest/CarManagerController.java create mode 100644 car_manager/src/main/java/cz/muni/pa165/carmanager/service/CarManagerService.java diff --git a/car_manager/pom.xml b/car_manager/pom.xml index 7e815a0c..f770d089 100644 --- a/car_manager/pom.xml +++ b/car_manager/pom.xml @@ -11,6 +11,23 @@ <artifactId>car_manager</artifactId> + <dependencies> + <dependency> + <groupId>jakarta.validation</groupId> + <artifactId>jakarta.validation-api</artifactId> + <version>3.0.2</version> + </dependency> + <dependency> + <groupId>${project.groupId}</groupId> + <artifactId>common</artifactId> + <version>${project.version}</version> + </dependency> + <dependency> + <groupId>org.springdoc</groupId> + <artifactId>springdoc-openapi-ui</artifactId> + <version>1.6.4</version> + </dependency> + </dependencies> <properties> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> diff --git a/car_manager/src/main/java/cz/muni/pa165/carmanager/facade/CarManagerFacade.java b/car_manager/src/main/java/cz/muni/pa165/carmanager/facade/CarManagerFacade.java new file mode 100644 index 00000000..fce1b96b --- /dev/null +++ b/car_manager/src/main/java/cz/muni/pa165/carmanager/facade/CarManagerFacade.java @@ -0,0 +1,7 @@ +package cz.muni.pa165.carmanager.facade; + +import org.springframework.stereotype.Service; + +@Service +public class CarManagerFacade { +} diff --git a/car_manager/src/main/java/cz/muni/pa165/carmanager/rest/CarManagerController.java b/car_manager/src/main/java/cz/muni/pa165/carmanager/rest/CarManagerController.java new file mode 100644 index 00000000..1257417b --- /dev/null +++ b/car_manager/src/main/java/cz/muni/pa165/carmanager/rest/CarManagerController.java @@ -0,0 +1,40 @@ +package cz.muni.pa165.carmanager.rest; + +import cz.muni.pa165.carmanager.facade.CarManagerFacade; +import cz.muni.pa165.common.racecomponents.Config; +import io.swagger.v3.oas.annotations.Operation; +import jakarta.validation.Valid; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping(path = "/car") +@Validated +public class CarManagerController { + + CarManagerFacade carManagerFacade; + + public CarManagerController(CarManagerFacade carManagerFacade) { + this.carManagerFacade = carManagerFacade; + } + + @Operation(summary = "Create a configuration") + @PostMapping(path = "/config", consumes = MediaType.APPLICATION_JSON_VALUE, + produces = MediaType.APPLICATION_JSON_VALUE) + public ResponseEntity<Config> createConfig(@Valid @RequestBody Config config) { + return ResponseEntity.ok(); + } + + @Operation(summary = "Update a specific configuration") + @PutMapping(path = "/config", consumes = MediaType.APPLICATION_JSON_VALUE, + produces = MediaType.APPLICATION_JSON_VALUE) + public ResponseEntity<Config> createConfig(@Valid @RequestBody Config config) { + return ResponseEntity.ok(); + } +} diff --git a/car_manager/src/main/java/cz/muni/pa165/carmanager/service/CarManagerService.java b/car_manager/src/main/java/cz/muni/pa165/carmanager/service/CarManagerService.java new file mode 100644 index 00000000..3fea65bc --- /dev/null +++ b/car_manager/src/main/java/cz/muni/pa165/carmanager/service/CarManagerService.java @@ -0,0 +1,7 @@ +package cz.muni.pa165.carmanager.service; + +import org.springframework.stereotype.Service; + +@Service +public class CarManagerService { +} -- GitLab