From ceb3caf09c5b8594493c6d98a1dd06f178b5f2d0 Mon Sep 17 00:00:00 2001
From: Kai Moritz <kai@juplo.de>
Date: Wed, 13 Apr 2022 23:09:49 +0200
Subject: [PATCH] =?utf8?q?Springify:=20`CommonContainerStoppingErrorHandle?=
 =?utf8?q?r`=20f=C3=BCr=20erwartetes=20Verhalten?=
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

* Der `CommonContainerStoppingErrorHandler` stoppt den Container beim
  ersten Auftreten eines Fehlers.
* Dadurch ist das erwartete Verhalten - soweit bisher durch die Tests
  definiert - wiederhergestellt.
* Der Handler wird den Container aber auch bei einem Fehler im Listener
  stoppen, so dass in dem Fall wahrscheinlich noch nachgebessert werden
  muss.
---
 src/main/java/de/juplo/kafka/ApplicationConfiguration.java | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/main/java/de/juplo/kafka/ApplicationConfiguration.java b/src/main/java/de/juplo/kafka/ApplicationConfiguration.java
index 5cefa320..fd4ff286 100644
--- a/src/main/java/de/juplo/kafka/ApplicationConfiguration.java
+++ b/src/main/java/de/juplo/kafka/ApplicationConfiguration.java
@@ -4,6 +4,7 @@ import org.apache.kafka.clients.consumer.ConsumerRecord;
 import org.springframework.boot.context.properties.EnableConfigurationProperties;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.kafka.listener.CommonContainerStoppingErrorHandler;
 
 import java.util.function.Consumer;
 
@@ -20,4 +21,10 @@ public class ApplicationConfiguration
       // Handle record
     };
   }
+
+  @Bean
+  public CommonContainerStoppingErrorHandler errorHandler()
+  {
+    return new CommonContainerStoppingErrorHandler();
+  }
 }
-- 
2.20.1