X-Git-Url: http://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Ftest%2Fjava%2Fde%2Fjuplo%2Fkafka%2FTestRecordHandler.java;h=d9f4e679ad9a5ced4ce34916cd6aae8293a78489;hb=0c9a0c1cf9a0065012743efcd940d8721bc33c20;hp=de28385438ab7a14d2f4c8120b840da7d1bcf73f;hpb=b3777fba0ae679d9e2c9d36626fa208a952f83e8;p=demos%2Fkafka%2Ftraining diff --git a/src/test/java/de/juplo/kafka/TestRecordHandler.java b/src/test/java/de/juplo/kafka/TestRecordHandler.java index de28385..d9f4e67 100644 --- a/src/test/java/de/juplo/kafka/TestRecordHandler.java +++ b/src/test/java/de/juplo/kafka/TestRecordHandler.java @@ -1,28 +1,52 @@ package de.juplo.kafka; import lombok.RequiredArgsConstructor; -import org.apache.kafka.clients.consumer.ConsumerRecord; +import org.apache.kafka.common.TopicPartition; + +import java.util.List; +import java.util.Map; @RequiredArgsConstructor -public abstract class TestRecordHandler implements RecordHandler +public class TestRecordHandler implements RecordHandler { - private final RecordHandler handler; + private final RecordHandler handler; + Map seenOffsets; + int receivedMessages; - public abstract void onNewRecord(ConsumerRecord record); + public void onNewRecord( + String topic, + Integer partition, + Long offset, + Message messgage) + { + seenOffsets.put(new TopicPartition(topic, partition), offset); + receivedMessages++; + } @Override - public void accept(ConsumerRecord record) + public void addNumber( + String topic, + Integer partition, + Long offset, + String user, + MessageAddNumber message) { - this.onNewRecord(record); - handler.accept(record); + this.onNewRecord(topic, partition, offset, message); + handler.addNumber(topic, partition, offset, user, message); } - @Override - public void beforeNextPoll() + @Override + public void calculateSum( + String topic, + Integer partition, + Long offset, + String user, + MessageCalculateSum message) { - handler.beforeNextPoll(); + this.onNewRecord(topic, partition, offset, message); + handler.calculateSum(topic, partition, offset, user, message); } }