From: Kai Moritz Date: Mon, 30 Jan 2023 19:09:13 +0000 (+0100) Subject: Vorgaben in der Vorlage vereinfacht X-Git-Tag: rest-producer--json--vorlage X-Git-Url: http://juplo.de/gitweb/?a=commitdiff_plain;h=a0ddca2f399d0b363cd8ced330b34f8d1d62076e;p=demos%2Fkafka%2Ftraining Vorgaben in der Vorlage vereinfacht --- diff --git a/src/main/java/de/juplo/kafka/RestProducer.java b/src/main/java/de/juplo/kafka/RestProducer.java index 90dd2ce..5139e63 100644 --- a/src/main/java/de/juplo/kafka/RestProducer.java +++ b/src/main/java/de/juplo/kafka/RestProducer.java @@ -30,12 +30,20 @@ public class RestProducer @RequestHeader(name = "X-id", required = false) Long correlationId, @RequestBody Integer number) { - // TODO: Wenn anstatt der Zahl "number" #number Nachrichten versendet - // werden muss der Zähler der folgenden Hilfsklasse entsprechend von - // 1 auf number angepasst werden! - ResultRecorder result = new ResultRecorder(1); + // Der Service verschickt für eine Zahl n immer n+1 Nachrichten. + // Für n=3 z.B.: + // ADD: { "number": 3, "next": 1 } + // ADD: { "number": 3, "next": 2 } + // ADD: { "number": 3, "next": 3 } + // CALC: { "number": 3 } - send(key, number, correlationId, result); + ResultRecorder result = new ResultRecorder(number+1); + + for (int i = 1; i <= number; i++) + { + send(key, new AddNumberMessage(number, i), correlationId, result); + } + send(key, new CalculateSumMessage(number), correlationId, result); return result.getDeferredResult(); } diff --git a/src/test/java/de/juplo/kafka/ApplicationTests.java b/src/test/java/de/juplo/kafka/ApplicationTests.java index 5844761..b9c1e17 100644 --- a/src/test/java/de/juplo/kafka/ApplicationTests.java +++ b/src/test/java/de/juplo/kafka/ApplicationTests.java @@ -62,7 +62,7 @@ public class ApplicationTests .andExpect(status().isOk()); await("Message was send") .atMost(Duration.ofSeconds(5)) - .until(() -> consumer.received.size() == 1); + .until(() -> consumer.received.size() == 667); }