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:54 UTC
[camel] 09/32: Restore compatibility
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 05f7bafd441876d2c6b182a35ed16855376f82c8
Author: Guillaume Nodet <gn...@gmail.com>
AuthorDate: Tue Mar 3 10:18:47 2020 +0100
Restore compatibility
---
.../org/apache/camel/reifier/RouteReifier.java | 24 ++++++++++++++--------
1 file changed, 15 insertions(+), 9 deletions(-)
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/reifier/RouteReifier.java b/core/camel-core-engine/src/main/java/org/apache/camel/reifier/RouteReifier.java
index 9223e51..7f3b270 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/reifier/RouteReifier.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/reifier/RouteReifier.java
@@ -87,7 +87,7 @@ public class RouteReifier extends ProcessorReifier<RouteDefinition> {
* @throws Exception can be thrown from the route builder
* @see AdviceWithRouteBuilder
*/
- public static RouteDefinition adviceWith(RouteDefinition definition, CamelContext camelContext, AdviceWithRouteBuilder builder) throws Exception {
+ public static RouteDefinition adviceWith(RouteDefinition definition, CamelContext camelContext, RouteBuilder builder) throws Exception {
ObjectHelper.notNull(definition, "RouteDefinition");
ObjectHelper.notNull(camelContext, "CamelContext");
ObjectHelper.notNull(builder, "RouteBuilder");
@@ -156,17 +156,21 @@ public class RouteReifier extends ProcessorReifier<RouteDefinition> {
* @see AdviceWithRouteBuilder
*/
@SuppressWarnings("deprecation")
- public RouteDefinition adviceWith(AdviceWithRouteBuilder builder) throws Exception {
+ public RouteDefinition adviceWith(RouteBuilder builder) throws Exception {
ObjectHelper.notNull(builder, "RouteBuilder");
- Model model = camelContext.getExtension(Model.class);
- ExtendedCamelContext ecc = camelContext.adapt(ExtendedCamelContext.class);
log.debug("AdviceWith route before: {}", this);
+ ExtendedCamelContext ecc = camelContext.adapt(ExtendedCamelContext.class);
+ Model model = camelContext.getExtension(Model.class);
// inject this route into the advice route builder so it can access this route
// and offer features to manipulate the route directly
- boolean logRoutesAsXml = builder.isLogRouteAsXml();
- builder.setOriginalRoute(definition);
+ boolean logRoutesAsXml = true;
+ if (builder instanceof AdviceWithRouteBuilder) {
+ AdviceWithRouteBuilder arb = (AdviceWithRouteBuilder)builder;
+ arb.setOriginalRoute(definition);
+ logRoutesAsXml = arb.isLogRouteAsXml();
+ }
// configure and prepare the routes from the builder
RoutesDefinition routes = builder.configureRoutes(camelContext);
@@ -201,9 +205,11 @@ public class RouteReifier extends ProcessorReifier<RouteDefinition> {
model.removeRouteDefinition(definition);
// any advice with tasks we should execute first?
- List<AdviceWithTask> tasks = builder.getAdviceWithTasks();
- for (AdviceWithTask task : tasks) {
- task.task();
+ if (builder instanceof AdviceWithRouteBuilder) {
+ List<AdviceWithTask> tasks = ((AdviceWithRouteBuilder) builder).getAdviceWithTasks();
+ for (AdviceWithTask task : tasks) {
+ task.task();
+ }
}
// now merge which also ensures that interceptors and the likes get