{
@Bean
public ExampleConsumer exampleConsumer(
- Consumer<String, String> kafkaConsumer, // << TODO: Typisierung anpassen
+ Consumer<String, String> kafkaConsumer,
ApplicationProperties properties,
ConfigurableApplicationContext applicationContext)
{
}
@Bean(destroyMethod = "")
- // TODO: Typisierung anpassen
public KafkaConsumer<String, String> kafkaConsumer(ApplicationProperties properties)
{
Properties props = new Properties();
}
props.put("metadata.max.age.ms", 5000); // 5 Sekunden
props.put("key.deserializer", StringDeserializer.class.getName());
- props.put("value.deserializer", StringDeserializer.class.getName()); // << TODO: Passende Strategie konfigurieren
+ props.put("value.deserializer", StringDeserializer.class.getName());
return new KafkaConsumer<>(props);
}
{
private final String id;
private final String topic;
- private final Consumer<String, String> consumer; // << TODO: Typisierung anpassen
+ private final Consumer<String, String> consumer;
private final Thread workerThread;
private final Runnable closeCallback;
while (true)
{
// TODO: Poll & Consume aus Ihrer bisherigen Implementierung
- // TODO: Verarbeitung abhängig vom Typ der Nachricht auslösen
+
+ // FÜR EINE SPÄTERE ÜBUNG:
+ // Verarbeitung abhängig vom Typ der Nachricht auslösen
+ //
// switch (value.getType())
// {
// case ADD -> addNumber((MessageAddNumber)value);