From f98e6425bec5008c7016c4a4b2dcf6f74f04ffc9 Mon Sep 17 00:00:00 2001 From: PiKouri Date: Fri, 7 Jan 2022 11:52:58 +0100 Subject: [PATCH] feat: Temperature Sensor + removeSensor --- .../controller/LightSensorController.java | 5 +++ .../TemperatureSensorController.java | 41 +++++++++++++++++++ .../model/TemperatureSensor.java | 5 --- 3 files changed, 46 insertions(+), 5 deletions(-) create mode 100644 TemperatureSensorService/src/main/java/fr/insa/arm/TemperatureSensorService/controller/TemperatureSensorController.java delete mode 100644 TemperatureSensorService/src/main/java/fr/insa/arm/TemperatureSensorService/model/TemperatureSensor.java diff --git a/LightSensorService/src/main/java/fr/insa/arm/LightSensorService/controller/LightSensorController.java b/LightSensorService/src/main/java/fr/insa/arm/LightSensorService/controller/LightSensorController.java index 8f944e3..d929a06 100644 --- a/LightSensorService/src/main/java/fr/insa/arm/LightSensorService/controller/LightSensorController.java +++ b/LightSensorService/src/main/java/fr/insa/arm/LightSensorService/controller/LightSensorController.java @@ -33,4 +33,9 @@ public class LightSensorController { return currentMaxId++; } + @DeleteMapping("/{id}") + public Float removeSensor(@PathVariable("id") Integer id) { + return sensorValues.remove(id); + } + } diff --git a/TemperatureSensorService/src/main/java/fr/insa/arm/TemperatureSensorService/controller/TemperatureSensorController.java b/TemperatureSensorService/src/main/java/fr/insa/arm/TemperatureSensorService/controller/TemperatureSensorController.java new file mode 100644 index 0000000..e66a1c5 --- /dev/null +++ b/TemperatureSensorService/src/main/java/fr/insa/arm/TemperatureSensorService/controller/TemperatureSensorController.java @@ -0,0 +1,41 @@ +package fr.insa.arm.TemperatureSensorService.controller; + +import org.springframework.web.bind.annotation.*; + +import java.util.HashMap; +import java.util.Map; + +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/temperatureSensor") +public class TemperatureSensorController { + + private final Map sensorValues = new HashMap<>(); + private int currentMaxId = 0; + + @GetMapping("/{id}") + public Float getSensorValue(@PathVariable("id") Integer id) { + return sensorValues.getOrDefault(id, null); + } + + @PutMapping("/{id}") + public Float setSensorValue(@PathVariable("id") Integer id, @RequestBody Float value) { + return sensorValues.replace(id, value); + } + + @PostMapping("/") + public int addSensor() { + sensorValues.put(currentMaxId, null); + return currentMaxId++; + } + + @DeleteMapping("/{id}") + public Float removeSensor(@PathVariable("id") Integer id) { + return sensorValues.remove(id); + } + +} diff --git a/TemperatureSensorService/src/main/java/fr/insa/arm/TemperatureSensorService/model/TemperatureSensor.java b/TemperatureSensorService/src/main/java/fr/insa/arm/TemperatureSensorService/model/TemperatureSensor.java deleted file mode 100644 index d85c614..0000000 --- a/TemperatureSensorService/src/main/java/fr/insa/arm/TemperatureSensorService/model/TemperatureSensor.java +++ /dev/null @@ -1,5 +0,0 @@ -package fr.insa.arm.TemperatureSensorService.model; - -public class TemperatureSensor { - -}