refactor: RebalanceListener als eigenständige Klasse
[demos/kafka/training] / src / main / java / de / juplo / kafka / WordcountRebalanceListener.java
diff --git a/src/main/java/de/juplo/kafka/WordcountRebalanceListener.java b/src/main/java/de/juplo/kafka/WordcountRebalanceListener.java
new file mode 100644 (file)
index 0000000..fd551c2
--- /dev/null
@@ -0,0 +1,27 @@
+package de.juplo.kafka;
+
+import lombok.RequiredArgsConstructor;
+import org.apache.kafka.clients.consumer.ConsumerRebalanceListener;
+import org.apache.kafka.common.TopicPartition;
+
+import java.util.Collection;
+
+
+@RequiredArgsConstructor
+public class WordcountRebalanceListener implements ConsumerRebalanceListener
+{
+  private final RecordHandler<String, String> handler;
+
+
+  @Override
+  public void onPartitionsAssigned(Collection<TopicPartition> partitions)
+  {
+    partitions.forEach(tp -> handler.onPartitionAssigned(tp));
+  }
+
+  @Override
+  public void onPartitionsRevoked(Collection<TopicPartition> partitions)
+  {
+    partitions.forEach(tp -> handler.onPartitionRevoked(tp));
+  }
+}