1+ package dev .luismachadoreis .flighttracker .server .ping .infrastructure .config ;
2+
3+ import org .apache .kafka .common .serialization .StringDeserializer ;
4+ import org .springframework .context .annotation .Bean ;
5+ import org .springframework .context .annotation .Configuration ;
6+ import org .springframework .beans .factory .annotation .Qualifier ;
7+ import org .springframework .kafka .config .ConcurrentKafkaListenerContainerFactory ;
8+ import org .springframework .kafka .core .ConsumerFactory ;
9+ import org .springframework .kafka .core .DefaultKafkaConsumerFactory ;
10+
11+ import java .util .Map ;
12+
13+ @ Configuration
14+ public class PingEventConsumerConfig {
15+
16+ private final Map <String , Object > properties ;
17+
18+ public PingEventConsumerConfig (@ Qualifier ("kafkaListenerContainerFactoryProperties" ) Map <String , Object > properties ) {
19+ this .properties = properties ;
20+ }
21+
22+ @ Bean (name = "pingEventConsumerFactory" )
23+ public ConsumerFactory <String , String > consumerFactory () {
24+ return new DefaultKafkaConsumerFactory <>(
25+ properties ,
26+ new StringDeserializer (),
27+ new StringDeserializer ()
28+ );
29+ }
30+
31+ @ Bean (name = "pingEventKafkaListenerContainerFactory" )
32+ public ConcurrentKafkaListenerContainerFactory <String , String > kafkaListenerContainerFactory () {
33+ ConcurrentKafkaListenerContainerFactory <String , String > factory =
34+ new ConcurrentKafkaListenerContainerFactory <>();
35+ factory .setConsumerFactory (consumerFactory ());
36+ return factory ;
37+ }
38+ }
0 commit comments