X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2FDriverController.java;h=cc3abedacf9c5b06924eb5ea91497191c861b537;hb=eba11d4859d1e2b936bcd9e8075986b5179b32ea;hp=d38927126ab58dd55a2c884ec0cbb104db08dc60;hpb=a2e8fc924e5b472d6b90c42d311514f91ea452f1;p=demos%2Fkafka%2Ftraining diff --git a/src/main/java/de/juplo/kafka/DriverController.java b/src/main/java/de/juplo/kafka/DriverController.java index d389271..cc3abed 100644 --- a/src/main/java/de/juplo/kafka/DriverController.java +++ b/src/main/java/de/juplo/kafka/DriverController.java @@ -5,9 +5,9 @@ import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; +import java.util.List; import java.util.Map; import java.util.Optional; -import java.util.concurrent.ExecutionException; import java.util.stream.Collectors; @@ -15,25 +15,12 @@ import java.util.stream.Collectors; @RequiredArgsConstructor public class DriverController { - private final EndlessConsumer consumer; private final ApplicationRecordHandler recordHandler; - - - @PostMapping("start") - public void start() - { - consumer.start(); - } - - @PostMapping("stop") - public void stop() throws ExecutionException, InterruptedException - { - consumer.stop(); - } + private final AdderResults results; @GetMapping("state") - public Map> state() + public Map> state() { return recordHandler @@ -46,7 +33,7 @@ public class DriverController } @GetMapping("state/{user}") - public ResponseEntity seen(@PathVariable String user) + public ResponseEntity state(@PathVariable String user) { for (AdderBusinessLogic adder : recordHandler.getState().values()) { @@ -58,6 +45,25 @@ public class DriverController return ResponseEntity.notFound().build(); } + @GetMapping("results") + public Map>> results() + { + return results.getState(); + } + + @GetMapping("results/{user}") + public ResponseEntity> results(@PathVariable String user) + { + for (Map> resultsByUser : this.results.getState().values()) + { + List results = resultsByUser.get(user); + if (results != null) + return ResponseEntity.ok(results); + } + + return ResponseEntity.notFound().build(); + } + @ExceptionHandler @ResponseStatus(HttpStatus.BAD_REQUEST)