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

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


The following commit(s) were added to refs/heads/main by this push:
     new 961b889  CAMEL-16819: Polished
961b889 is described below

commit 961b8899ad5312cb60e8818a6ad280855c952bdc
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Sun Aug 1 15:21:59 2021 +0200

    CAMEL-16819: Polished
---
 .../camel/processor/errorhandler/ExceptionPolicyStrategy.java     | 5 ++++-
 .../camel/processor/errorhandler/RedeliveryErrorHandler.java      | 8 ++++----
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/ExceptionPolicyStrategy.java
 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/ExceptionPolicyStrategy.java
index 3bf60586..f9544c4 100644
--- 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/ExceptionPolicyStrategy.java
+++ 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/ExceptionPolicyStrategy.java
@@ -23,7 +23,10 @@ import org.apache.camel.Exchange;
 /**
  * A strategy to determine which {@link ExceptionPolicyKey} should handle the 
thrown exception.
  *
- * @see DefaultExceptionPolicyStrategy DefaultExceptionPolicy
+ * To use a custom implementation, then register the custom {@link 
ExceptionPolicyStrategy} instance to the Camel
+ * {@link org.apache.camel.spi.Registry}.
+ *
+ * @see DefaultExceptionPolicyStrategy for the DefaultExceptionPolicy
  */
 public interface ExceptionPolicyStrategy {
 
diff --git 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/RedeliveryErrorHandler.java
 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/RedeliveryErrorHandler.java
index eddc219..65d03d5 100644
--- 
a/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/RedeliveryErrorHandler.java
+++ 
b/core/camel-core-processor/src/main/java/org/apache/camel/processor/errorhandler/RedeliveryErrorHandler.java
@@ -18,7 +18,6 @@ package org.apache.camel.processor.errorhandler;
 
 import java.util.ArrayList;
 import java.util.List;
-import java.util.Set;
 import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.RejectedExecutionException;
 import java.util.concurrent.ScheduledExecutorService;
@@ -162,9 +161,10 @@ public abstract class RedeliveryErrorHandler extends 
ErrorHandlerSupport
             }
         }
 
-        Set<ExceptionPolicyStrategy> policies = 
this.camelContext.getRegistry().findByType(ExceptionPolicyStrategy.class);
-        if (policies.size() == 1) {
-            exceptionPolicy = policies.iterator().next();
+        ExceptionPolicyStrategy customExceptionPolicy
+                = CamelContextHelper.findByType(camelContext, 
ExceptionPolicyStrategy.class);
+        if (customExceptionPolicy != null) {
+            exceptionPolicy = customExceptionPolicy;
         }
     }
 

Reply via email to