1 package de.juplo.kafka;
4 import lombok.extern.slf4j.Slf4j;
5 import org.springframework.kafka.annotation.KafkaHandler;
6 import org.springframework.kafka.annotation.KafkaListener;
7 import org.springframework.kafka.listener.adapter.ConsumerRecordMetadata;
8 import org.springframework.kafka.support.KafkaHeaders;
9 import org.springframework.messaging.handler.annotation.Header;
10 import org.springframework.messaging.handler.annotation.Payload;
11 import org.springframework.stereotype.Component;
13 import java.util.LinkedList;
14 import java.util.List;
18 @KafkaListener(topics = "test")
21 public class MultiMessageConsumer
23 private final List<Foo> foos = new LinkedList<>();
24 private final List<Bar> bars = new LinkedList<>();
28 public void handleFoo(
30 @Header(KafkaHeaders.RECORD_METADATA) ConsumerRecordMetadata metadata)
33 "Received a Foo: {}, topic={}, partition={}, offset={}",
42 public void handleBar(
44 @Header(KafkaHeaders.RECORD_METADATA) ConsumerRecordMetadata metadata)
55 @KafkaHandler(isDefault = true)
57 @Payload Object unknown,
58 @Header(KafkaHeaders.RECORD_METADATA) ConsumerRecordMetadata metadata)
61 "Received an unknown message: {}",