Vereinfachte Version der auf Spring Kafka basierenden Implementierung
[demos/kafka/training] / src / main / java / de / juplo / kafka / DriverController.java
diff --git a/src/main/java/de/juplo/kafka/DriverController.java b/src/main/java/de/juplo/kafka/DriverController.java
deleted file mode 100644 (file)
index 26a5bc8..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-package de.juplo.kafka;
-
-import lombok.RequiredArgsConstructor;
-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;
-
-
-@RestController
-@RequiredArgsConstructor
-public class DriverController
-{
-  private final EndlessConsumer consumer;
-  private final ApplicationRecordHandler recordHandler;
-  private final AdderResults results;
-
-
-  @PostMapping("start")
-  public void start()
-  {
-    consumer.start();
-  }
-
-  @PostMapping("stop")
-  public void stop() throws ExecutionException, InterruptedException
-  {
-    consumer.stop();
-  }
-
-
-  @GetMapping("state")
-  public Map<Integer, Map<String, AdderResult>> state()
-  {
-    return
-        recordHandler
-            .getState()
-            .entrySet()
-            .stream()
-            .collect(Collectors.toMap(
-                entry -> entry.getKey(),
-                entry -> entry.getValue().getState()));
-  }
-
-  @GetMapping("state/{user}")
-  public ResponseEntity<Long> state(@PathVariable String user)
-  {
-    for (AdderBusinessLogic adder : recordHandler.getState().values())
-    {
-      Optional<Long> sum = adder.getSum(user);
-      if (sum.isPresent())
-        return ResponseEntity.ok(sum.get());
-    }
-
-    return ResponseEntity.notFound().build();
-  }
-
-  @GetMapping("results")
-  public Map<Integer, Map<String, List<AdderResult>>> results()
-  {
-    return results.getState();
-  }
-
-  @GetMapping("results/{user}")
-  public ResponseEntity<List<AdderResult>> results(@PathVariable String user)
-  {
-    for (Map<String, List<AdderResult>> resultsByUser : this.results.getState().values())
-    {
-      List<AdderResult> results = resultsByUser.get(user);
-      if (results != null)
-        return ResponseEntity.ok(results);
-    }
-
-    return ResponseEntity.notFound().build();
-  }
-
-
-  @ExceptionHandler
-  @ResponseStatus(HttpStatus.BAD_REQUEST)
-  public ErrorResponse illegalStateException(IllegalStateException e)
-  {
-    return new ErrorResponse(e.getMessage(), HttpStatus.BAD_REQUEST.value());
-  }
-}