This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch errorhandler-in-dsl
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 0ba443762bb0cf0f49bb06cf90b86dd2461afd3d
Author: Claus Ibsen <[email protected]>
AuthorDate: Wed Apr 6 07:02:14 2022 +0200

    CAMEL-16834: error handler in model DSL. WIP
---
 .../org/apache/camel/builder/BuilderSupport.java    | 21 +++++++++++++++++----
 .../camel/builder/DeadLetterChannelBuilder.java     |  1 +
 .../aggregator/BodyOnlyAggregationStrategyTest.java |  7 +++----
 3 files changed, 21 insertions(+), 8 deletions(-)

diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/builder/BuilderSupport.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/builder/BuilderSupport.java
index d528efde45e..fd0d67e9b1c 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/builder/BuilderSupport.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/builder/BuilderSupport.java
@@ -26,6 +26,7 @@ import org.apache.camel.Endpoint;
 import org.apache.camel.Expression;
 import org.apache.camel.NoSuchEndpointException;
 import org.apache.camel.RuntimeCamelException;
+import org.apache.camel.model.errorhandler.DeadLetterChannelDefinition;
 import org.apache.camel.model.language.DatasonnetExpression;
 import org.apache.camel.model.language.ExchangePropertyExpression;
 import org.apache.camel.model.language.HeaderExpression;
@@ -437,10 +438,22 @@ public abstract class BuilderSupport implements 
CamelContextAware {
      * @param  deadLetterUri uri to the dead letter endpoint storing dead 
messages
      * @return               the builder
      */
-    public DeadLetterChannelBuilder deadLetterChannel(String deadLetterUri) {
-        return new DeadLetterChannelBuilder(deadLetterUri);
-    }
-
+    public DeadLetterChannelDefinition deadLetterChannel(String deadLetterUri) 
{
+        return new DeadLetterChannelDefinition(deadLetterUri);
+    }
+
+    //    /**
+    //     * <a href="http://camel.apache.org/dead-letter-channel.html";>Dead 
Letter Channel EIP:</a> is a error handler for
+    //     * handling messages that could not be delivered to it's intended 
destination.
+    //     *
+    //     * @param  deadLetterUri uri to the dead letter endpoint storing 
dead messages
+    //     * @return               the builder
+    //     */
+    //    @Deprecated
+    //    public DeadLetterChannelBuilder deadLetterChannel(String 
deadLetterUri) {
+    //        return new DeadLetterChannelBuilder(deadLetterUri);
+    //    }
+    //
     /**
      * <a href="http://camel.apache.org/dead-letter-channel.html";>Dead Letter 
Channel EIP:</a> is a error handler for
      * handling messages that could not be delivered to it's intended 
destination.
diff --git 
a/core/camel-core-model/src/main/java/org/apache/camel/builder/DeadLetterChannelBuilder.java
 
b/core/camel-core-model/src/main/java/org/apache/camel/builder/DeadLetterChannelBuilder.java
index 7bc8e032255..323e431c065 100644
--- 
a/core/camel-core-model/src/main/java/org/apache/camel/builder/DeadLetterChannelBuilder.java
+++ 
b/core/camel-core-model/src/main/java/org/apache/camel/builder/DeadLetterChannelBuilder.java
@@ -30,6 +30,7 @@ import org.slf4j.LoggerFactory;
  * A builder of a <a 
href="http://camel.apache.org/dead-letter-channel.html";>Dead Letter Channel</a>
  */
 @Configurer
+@Deprecated
 public class DeadLetterChannelBuilder extends DefaultErrorHandlerBuilder 
implements DeadLetterChannelProperties {
 
     public DeadLetterChannelBuilder() {
diff --git 
a/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/BodyOnlyAggregationStrategyTest.java
 
b/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/BodyOnlyAggregationStrategyTest.java
index ab577c834fb..854d781a8e7 100644
--- 
a/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/BodyOnlyAggregationStrategyTest.java
+++ 
b/core/camel-core/src/test/java/org/apache/camel/processor/aggregator/BodyOnlyAggregationStrategyTest.java
@@ -18,9 +18,9 @@ package org.apache.camel.processor.aggregator;
 
 import org.apache.camel.AggregationStrategy;
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.ErrorHandlerFactory;
 import org.apache.camel.Exchange;
 import org.apache.camel.ExtendedExchange;
-import org.apache.camel.builder.DeadLetterChannelBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.junit.jupiter.api.Test;
 
@@ -45,11 +45,10 @@ public class BodyOnlyAggregationStrategyTest extends 
ContextTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() throws Exception {
-                DeadLetterChannelBuilder deadLetterChannelBuilder = 
deadLetterChannel("direct:error");
-                deadLetterChannelBuilder.setUseOriginalMessage(true);
+                ErrorHandlerFactory dh = 
deadLetterChannel("direct:error").useOriginalMessage();
 
                 from("direct:failingRoute")
-                        .errorHandler(deadLetterChannelBuilder)
+                        .errorHandler(dh)
                         .to("mock:failingRoute")
                         .throwException(new RuntimeException("Boem!"));
 

Reply via email to