Refaktorisierung für Tests - ExecutorService als separate Bean erzeugt
[demos/kafka/training] / src / main / java / de / juplo / kafka / ApplicationConfiguration.java
index 6e04453..76d0c8a 100644 (file)
@@ -8,6 +8,7 @@ import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
 
 import java.util.Properties;
+import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 
 
@@ -18,18 +19,21 @@ public class ApplicationConfiguration
   @Bean
   public EndlessConsumer endlessConsumer(
       KafkaConsumer<String, String> kafkaConsumer,
+      ExecutorService executor,
       ApplicationProperties properties)
   {
-    EndlessConsumer consumer =
+    return
         new EndlessConsumer(
-            Executors.newFixedThreadPool(1),
+            executor,
             properties.getClientId(),
             properties.getTopic(),
             kafkaConsumer);
+  }
 
-    consumer.start();
-
-    return consumer;
+  @Bean
+  public ExecutorService executor()
+  {
+    return Executors.newSingleThreadExecutor();
   }
 
   @Bean(destroyMethod = "close")