X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fde%2Fjuplo%2Fkafka%2FDriverController.java;h=09fb762f25ca02f0d6809570d518a3e7524206aa;hb=refs%2Fheads%2Frebalance-listener;hp=28aa69f94dacd14f253d9eb5a77b5220919311f9;hpb=718a622ba2461dfceeab05b6b4f0f827b6e1fbfc;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 28aa69f..09fb762 100644 --- a/src/main/java/de/juplo/kafka/DriverController.java +++ b/src/main/java/de/juplo/kafka/DriverController.java @@ -1,10 +1,10 @@ package de.juplo.kafka; import lombok.RequiredArgsConstructor; -import org.springframework.web.bind.annotation.ExceptionHandler; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.http.HttpStatus; +import org.springframework.web.bind.annotation.*; +import java.util.Map; import java.util.concurrent.ExecutionException; @@ -13,6 +13,7 @@ import java.util.concurrent.ExecutionException; public class DriverController { private final EndlessConsumer consumer; + private final ApplicationRecordHandler recordHandler; @PostMapping("start") @@ -27,9 +28,18 @@ public class DriverController consumer.stop(); } + + @GetMapping("state") + public Map> state() + { + return recordHandler.getState(); + } + + @ExceptionHandler + @ResponseStatus(HttpStatus.BAD_REQUEST) public ErrorResponse illegalStateException(IllegalStateException e) { - return new ErrorResponse(e.getMessage(), 400); + return new ErrorResponse(e.getMessage(), HttpStatus.BAD_REQUEST.value()); } }