You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by gn...@apache.org on 2020/03/04 08:57:50 UTC
[camel] 05/32: Use ExchangeHelper.getRoute(Exchange) when possible
This is an automated email from the ASF dual-hosted git repository.
gnodet pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git
commit 67abe4f470a73b800825e2f650bcad05ddf527ed
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Tue Feb 25 13:49:18 2020 +0100
Use ExchangeHelper.getRoute(Exchange) when possible
---
.../src/main/java/org/apache/camel/impl/engine/MDCUnitOfWork.java | 1 -
.../main/java/org/apache/camel/processor/MulticastProcessor.java | 2 +-
.../java/org/apache/camel/processor/RecipientListProcessor.java | 2 +-
.../src/main/java/org/apache/camel/processor/RoutingSlip.java | 2 +-
.../src/main/java/org/apache/camel/processor/Splitter.java | 2 +-
.../processor/errorhandler/DefaultExceptionPolicyStrategy.java | 6 +++---
.../apache/camel/processor/errorhandler/RedeliveryErrorHandler.java | 3 +--
7 files changed, 8 insertions(+), 10 deletions(-)
diff --git a/core/camel-base/src/main/java/org/apache/camel/impl/engine/MDCUnitOfWork.java b/core/camel-base/src/main/java/org/apache/camel/impl/engine/MDCUnitOfWork.java
index 0a1f48d..1cc4f45 100644
--- a/core/camel-base/src/main/java/org/apache/camel/impl/engine/MDCUnitOfWork.java
+++ b/core/camel-base/src/main/java/org/apache/camel/impl/engine/MDCUnitOfWork.java
@@ -106,7 +106,6 @@ public class MDCUnitOfWork extends DefaultUnitOfWork {
@Override
public Route popRoute() {
Route answer = super.popRoute();
-
// restore old route id back again after we have popped
Route previous = getRoute();
if (previous != null) {
diff --git a/core/camel-base/src/main/java/org/apache/camel/processor/MulticastProcessor.java b/core/camel-base/src/main/java/org/apache/camel/processor/MulticastProcessor.java
index 1a516e0..3f8bf40 100644
--- a/core/camel-base/src/main/java/org/apache/camel/processor/MulticastProcessor.java
+++ b/core/camel-base/src/main/java/org/apache/camel/processor/MulticastProcessor.java
@@ -661,7 +661,7 @@ public class MulticastProcessor extends AsyncProcessorSupport implements Navigat
}
// and add the pair
- Route route = exchange.getUnitOfWork() != null ? exchange.getUnitOfWork().getRoute() : null;
+ Route route = ExchangeHelper.getRoute(exchange);
result.add(createProcessorExchangePair(index++, processor, copy, route));
}
diff --git a/core/camel-base/src/main/java/org/apache/camel/processor/RecipientListProcessor.java b/core/camel-base/src/main/java/org/apache/camel/processor/RecipientListProcessor.java
index cbfbd62..2d68543 100644
--- a/core/camel-base/src/main/java/org/apache/camel/processor/RecipientListProcessor.java
+++ b/core/camel-base/src/main/java/org/apache/camel/processor/RecipientListProcessor.java
@@ -254,7 +254,7 @@ public class RecipientListProcessor extends MulticastProcessor {
setToEndpoint(copy, producer);
// rework error handling to support fine grained error handling
- Route route = exchange.getUnitOfWork() != null ? exchange.getUnitOfWork().getRoute() : null;
+ Route route = ExchangeHelper.getRoute(exchange);
Processor prepared = createErrorHandler(route, copy, producer);
// invoke on prepare on the exchange if specified
diff --git a/core/camel-base/src/main/java/org/apache/camel/processor/RoutingSlip.java b/core/camel-base/src/main/java/org/apache/camel/processor/RoutingSlip.java
index 4098ec0..ee0980c 100644
--- a/core/camel-base/src/main/java/org/apache/camel/processor/RoutingSlip.java
+++ b/core/camel-base/src/main/java/org/apache/camel/processor/RoutingSlip.java
@@ -424,7 +424,7 @@ public class RoutingSlip extends AsyncProcessorSupport implements Traceable, IdA
return producerCache.doInAsyncProducer(endpoint, exchange, callback, (p, ex, cb) -> {
// rework error handling to support fine grained error handling
- Route route = ex.getUnitOfWork() != null ? ex.getUnitOfWork().getRoute() : null;
+ Route route = ExchangeHelper.getRoute(ex);
AsyncProcessor target = createErrorHandler(route, ex, p, endpoint);
// set property which endpoint we send to and the producer that can do it
diff --git a/core/camel-base/src/main/java/org/apache/camel/processor/Splitter.java b/core/camel-base/src/main/java/org/apache/camel/processor/Splitter.java
index b06e602..f3463db 100644
--- a/core/camel-base/src/main/java/org/apache/camel/processor/Splitter.java
+++ b/core/camel-base/src/main/java/org/apache/camel/processor/Splitter.java
@@ -145,7 +145,7 @@ public class Splitter extends MulticastProcessor implements AsyncProcessor, Trac
this.value = value;
this.iterator = ObjectHelper.createIterator(value);
this.copy = copyAndPrepareSubExchange(exchange, true);
- this.route = exchange.getUnitOfWork() != null ? exchange.getUnitOfWork().getRoute() : null;
+ this.route = ExchangeHelper.getRoute(exchange);
}
@Override
diff --git a/core/camel-base/src/main/java/org/apache/camel/processor/errorhandler/DefaultExceptionPolicyStrategy.java b/core/camel-base/src/main/java/org/apache/camel/processor/errorhandler/DefaultExceptionPolicyStrategy.java
index 33660bd..04a1467 100644
--- a/core/camel-base/src/main/java/org/apache/camel/processor/errorhandler/DefaultExceptionPolicyStrategy.java
+++ b/core/camel-base/src/main/java/org/apache/camel/processor/errorhandler/DefaultExceptionPolicyStrategy.java
@@ -24,6 +24,7 @@ import java.util.TreeMap;
import org.apache.camel.Exchange;
import org.apache.camel.Route;
+import org.apache.camel.support.ExchangeHelper;
import org.apache.camel.util.ObjectHelper;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -132,9 +133,8 @@ public class DefaultExceptionPolicyStrategy implements ExceptionPolicyStrategy {
// if ExceptionPolicy is route scoped then the current route (Exchange) must match
// so we will not pick an ExceptionPolicy from another route
String typeRoute = type.getRouteId();
- if (exchange != null && exchange.getUnitOfWork() != null && ObjectHelper.isNotEmpty(typeRoute)) {
- Route rc = exchange.getUnitOfWork().getRoute();
- String route = rc != null ? rc.getRouteId() : null;
+ if (exchange != null && ObjectHelper.isNotEmpty(typeRoute)) {
+ String route = ExchangeHelper.getRouteId(exchange);
if (route != null && !route.equals(typeRoute)) {
if (LOG.isTraceEnabled()) {
LOG.trace("The type is scoped for route: {} however Exchange is at route: {}", typeRoute, route);
diff --git a/core/camel-base/src/main/java/org/apache/camel/processor/errorhandler/RedeliveryErrorHandler.java b/core/camel-base/src/main/java/org/apache/camel/processor/errorhandler/RedeliveryErrorHandler.java
index 807ee5a..9976a77 100644
--- a/core/camel-base/src/main/java/org/apache/camel/processor/errorhandler/RedeliveryErrorHandler.java
+++ b/core/camel-base/src/main/java/org/apache/camel/processor/errorhandler/RedeliveryErrorHandler.java
@@ -1030,8 +1030,7 @@ public abstract class RedeliveryErrorHandler extends ErrorHandlerSupport impleme
// store the last to endpoint as the failure endpoint
exchange.setProperty(Exchange.FAILURE_ENDPOINT, exchange.getProperty(Exchange.TO_ENDPOINT));
// and store the route id so we know in which route we failed
- UnitOfWork uow = exchange.getUnitOfWork();
- Route rc = uow != null ? uow.getRoute() : null;
+ Route rc = ExchangeHelper.getRoute(exchange);
if (rc != null) {
exchange.setProperty(Exchange.FAILURE_ROUTE_ID, rc.getRouteId());
}