4047093b03de41932c10d4e6cd7acc876ab066e4
[demos/kafka/training] / src / test / java / de / juplo / kafka / TestRecordHandler.java
1 package de.juplo.kafka;
2
3 import lombok.RequiredArgsConstructor;
4 import org.apache.kafka.clients.consumer.ConsumerRecord;
5 import org.apache.kafka.common.TopicPartition;
6
7
8 @RequiredArgsConstructor
9 public abstract class TestRecordHandler<K, V> implements RecordHandler<K, V>
10 {
11   private final RecordHandler<K, V> handler;
12
13
14   public abstract void onNewRecord(ConsumerRecord<K, V> record);
15
16
17   @Override
18   public void accept(ConsumerRecord<K, V> record)
19   {
20     this.onNewRecord(record);
21     handler.accept(record);
22   }
23   @Override
24
25   public void beforeNextPoll()
26   {
27     handler.beforeNextPoll();
28   }
29
30   @Override
31   public void onPartitionAssigned(TopicPartition tp)
32   {
33     handler.onPartitionAssigned(tp);
34   }
35
36   @Override
37   public void onPartitionRevoked(TopicPartition tp)
38   {
39     handler.onPartitionRevoked(tp);
40   }
41 }