2. Schritt Live-Umbau: Fix für Concurrent Modification
authorKai Moritz <kai@juplo.de>
Sat, 15 Mar 2025 17:58:03 +0000 (18:58 +0100)
committerKai Moritz <kai@juplo.de>
Sat, 15 Mar 2025 19:22:25 +0000 (20:22 +0100)
src/main/java/de/juplo/kafka/ApplicationConfiguration.java
src/main/java/de/juplo/kafka/ExampleConsumer.java

index 55c42f6..49d7891 100644 (file)
@@ -26,7 +26,7 @@ public class ApplicationConfiguration
         kafkaConsumer);
   }
 
-  @Bean
+  @Bean(destroyMethod = "")
   public KafkaConsumer<String, String> kafkaConsumer(ApplicationProperties properties)
   {
     Properties props = new Properties();
index 1d9453b..66665be 100644 (file)
@@ -85,5 +85,14 @@ public class ExampleConsumer implements Runnable
     consumed++;
     log.info("{} - partition={}-{}, offset={}: {}={}", id, topic, partition, offset, key, value);
   }
+
+
+  public void shutdown() throws InterruptedException
+  {
+    log.info("{} - Waking up the consumer", id);
+    consumer.wakeup();
+    log.info("{} - Joining the worker thread", id);
+    workerThread.join();
+  }
 }