refactor: Alle Kafka-Belange in den `WordcountRebalanceListener` verschoben
[demos/kafka/training] / src / main / java / de / juplo / kafka / ApplicationConfiguration.java
index b077a90..d48c027 100644 (file)
@@ -18,12 +18,20 @@ import java.util.concurrent.Executors;
 public class ApplicationConfiguration
 {
   @Bean
-  public WordcountRecordHandler wordcountRecordHandler(
+  public WordcountRecordHandler wordcountRecordHandler()
+  {
+    return new WordcountRecordHandler();
+  }
+
+  @Bean
+  public WordcountRebalanceListener wordcountRebalanceListener(
+      WordcountRecordHandler wordcountRecordHandler,
       PartitionStatisticsRepository repository,
       Consumer<String, String> consumer,
       ApplicationProperties properties)
   {
-    return new WordcountRecordHandler(
+    return new WordcountRebalanceListener(
+        wordcountRecordHandler,
         repository,
         properties.getClientId(),
         properties.getTopic(),
@@ -36,6 +44,7 @@ public class ApplicationConfiguration
   public EndlessConsumer<String, String> endlessConsumer(
       KafkaConsumer<String, String> kafkaConsumer,
       ExecutorService executor,
+      WordcountRebalanceListener wordcountRebalanceListener,
       WordcountRecordHandler wordcountRecordHandler,
       ApplicationProperties properties)
   {
@@ -45,6 +54,7 @@ public class ApplicationConfiguration
             properties.getClientId(),
             properties.getTopic(),
             kafkaConsumer,
+            wordcountRebalanceListener,
             wordcountRecordHandler);
   }