X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2FDriverController.java;fp=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2FDriverController.java;h=0870f19de5dcdda626eb790a39106a4af7f22d2f;hb=5b4b7acf7b6a02e0e5c779257d3f5996366625e6;hp=5d6c1a8d0ca1657b96a516b52e9153d83ba906d0;hpb=f83599b6aaefff62c286e2143bb2e8a81751e6fd;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 5d6c1a8..0870f19 100644 --- a/src/main/java/de/juplo/kafka/DriverController.java +++ b/src/main/java/de/juplo/kafka/DriverController.java @@ -6,7 +6,9 @@ import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.util.Map; +import java.util.Optional; import java.util.concurrent.ExecutionException; +import java.util.stream.Collectors; @RestController @@ -14,7 +16,7 @@ import java.util.concurrent.ExecutionException; public class DriverController { private final EndlessConsumer consumer; - private final WordcountRecordHandler wordcount; + private final AdderRecordHandler adderRecordHandler; @PostMapping("start") @@ -30,20 +32,27 @@ public class DriverController } - @GetMapping("seen") - public Map>> seen() + @GetMapping("state") + public Map> state() { - return wordcount.getSeen(); + return + adderRecordHandler + .getState() + .entrySet() + .stream() + .collect(Collectors.toMap( + entry -> entry.getKey(), + entry -> entry.getValue().getState())); } - @GetMapping("seen/{user}") - public ResponseEntity> seen(@PathVariable String user) + @GetMapping("state/{user}") + public ResponseEntity seen(@PathVariable String user) { - for (Map> users : wordcount.getSeen().values()) + for (AdderBusinessLogic adderBusinessLogic : adderRecordHandler.getState().values()) { - Map words = users.get(user); - if (words != null) - return ResponseEntity.ok(words); + Optional sum = adderBusinessLogic.getSum(user); + if (sum.isPresent()) + return ResponseEntity.ok(sum.get()); } return ResponseEntity.notFound().build();