You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2020/10/22 17:23:08 UTC

[camel] branch master updated (bdc1d53 -> 7b71aaf)

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

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


    from bdc1d53  Revert "[CAMEL-15738]camel-fastjson|camel-fhir|camel-gson|camel-jackson|camel-jacksonxml|camel-jaxb|camel-xstream doc mismatch the value in src code"
     new 1472e57  camel-core - Polished
     new 0e7071b  CAMEL-15739: camel-core - Move AdviceWith from Reifier to Builder
     new 7b71aaf  CAMEL-15739: camel-core - Move AdviceWith from Reifier to Builder

The 3 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../java/org/apache/camel/builder/AdviceWith.java  | 174 +++++++++++++++++++++
 .../apache/camel/builder/AdviceWithBuilder.java    |   4 +-
 .../camel/builder/AdviceWithRouteBuilder.java      |   3 +-
 .../org/apache/camel/impl/DefaultCamelContext.java |   5 +-
 .../java/org/apache/camel/impl/DefaultModel.java   |  26 +--
 .../org/apache/camel/reifier/RouteReifier.java     |  24 ++-
 .../bean/issues/BeanThisAdviceWithIssueTest.java   |   4 +-
 .../DirectVmTwoCamelContextAdviceWithTest.java     |   4 +-
 ...onentAdviceWithInterceptSendToEndpointTest.java |   4 +-
 .../component/rest/FromRestAdviceWithTest.java     |   4 +-
 .../org/apache/camel/issues/AdviceWithCBRTest.java |   6 +-
 ...viceWithContextScopedErrorHandlerIssueTest.java |   4 +-
 .../issues/AdviceWithErrorHandlerRemoveTest.java   |   6 +-
 .../issues/AdviceWithInterceptFromRemoveTest.java  |   6 +-
 .../issues/AdviceWithInterceptRemoveTest.java      |   6 +-
 ...dviceWithInterceptSendToEndpointRemoveTest.java |   6 +-
 ...nterceptSendToEndpointWithLoadbalancerTest.java |   4 +-
 .../camel/issues/AdviceWithInterceptTest.java      |   4 +-
 .../issues/AdviceWithInvalidConfiguredTest.java    |   6 +-
 .../apache/camel/issues/AdviceWithIssueTest.java   |  12 +-
 .../issues/AdviceWithOnCompletionRemoveTest.java   |   6 +-
 .../camel/issues/AdviceWithOnCompletionTest.java   |   4 +-
 .../AdviceWithOnExceptionAndInterceptTest.java     |   4 +-
 .../AdviceWithOnExceptionMultipleIssueTest.java    |  12 +-
 .../issues/AdviceWithOnExceptionRemoveTest.java    |   6 +-
 .../camel/issues/AdviceWithOnExceptionTest.java    |   4 +-
 .../apache/camel/issues/AdviceWithPolicyTest.java  |   4 +-
 .../camel/issues/AdviceWithRoutePolicyTest.java    |   4 +-
 ...AdviceWithRouteScopedErrorHandlerIssueTest.java |   4 +-
 .../issues/AdviceWithStartTargetIssueTest.java     |   4 +-
 .../camel/issues/AdviceWithTransactedTest.java     |   4 +-
 .../AdviceWithTwoRoutesOnExceptionIssueTest.java   |   6 +-
 .../camel/issues/AdviceWithUrlIssueTest.java       |   6 +-
 .../issues/AdviceWithWeaveByToUriCBRTest.java      |   4 +-
 .../camel/issues/AdviceWithWeaveByTypeCBRTest.java |   4 +-
 .../camel/issues/ErrorHandlerAdviceIssueTest.java  |   6 +-
 .../RouteScopedErrorHandlerAndOnExceptionTest.java |   6 +-
 ...eptionWithInterceptSendToEndpointIssueTest.java |   4 +-
 ...erceptSendToEndpointIssueWithPredicateTest.java |   4 +-
 .../issues/StopRouteImpactsErrorHandlerTest.java   |   6 +-
 ...erceptSendToEndpointIssueWithPredicateTest.java |   4 +-
 .../InterceptSendToEndpointWithParametersTest.java |   4 +-
 .../interceptor/AdviceWithAutoStartupTest.java     |   4 +-
 ...AdviceWithMockEndpointsHavingParameterTest.java |   4 +-
 .../interceptor/AdviceWithMockEndpointsTest.java   |   6 +-
 .../AdviceWithMockEndpointsWithSkipTest.java       |   4 +-
 ...dviceWithMockMultipleEndpointsWithSkipTest.java |   4 +-
 .../AdviceWithRecipientListMockEndpointsTest.java  |   4 +-
 .../interceptor/AdviceWithReplaceFromTest.java     |   8 +-
 .../interceptor/AdviceWithRouteIdTest.java         |   4 +-
 .../interceptor/AdviceWithTasksMatchTest.java      |   4 +-
 .../AdviceWithTasksOnExceptionTest.java            |   4 +-
 .../interceptor/AdviceWithTasksSelectTest.java     |  18 +--
 .../processor/interceptor/AdviceWithTasksTest.java |  12 +-
 .../AdviceWithTasksToStringPatternTest.java        |  12 +-
 .../processor/interceptor/AdviceWithTest.java      |  10 +-
 .../interceptor/AdviceWithTryCatchTest.java        |   4 +-
 .../AdviceWithTwoRoutesOnExceptionTest.java        |  10 +-
 .../interceptor/AdviceWithTwoRoutesTest.java       |  10 +-
 .../processor/interceptor/AdviceWithTypeTest.java  |  12 +-
 .../AdviceWithWeaveAfterLastSplitTest.java         |   4 +-
 .../AdviceWithWeaveByStringOnChoiceTest.java       |   4 +-
 .../AdviceWithWeaveByTypeOnExceptionTest.java      |   4 +-
 .../interceptor/AdviceWithWeaveFirstLastTest.java  |   6 +-
 .../interceptor/AdviceWithWeaveLastCBRTest.java    |   6 +-
 .../AdviceWithWeaveToUriAndAddLastTest.java        |   4 +-
 66 files changed, 378 insertions(+), 206 deletions(-)
 create mode 100644 core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWith.java


[camel] 02/03: CAMEL-15739: camel-core - Move AdviceWith from Reifier to Builder

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 0e7071b98a6c4c0fb17dbeaa1a25952bf9078131
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Thu Oct 22 18:36:36 2020 +0200

    CAMEL-15739: camel-core - Move AdviceWith from Reifier to Builder
---
 .../java/org/apache/camel/builder/AdviceWith.java  | 174 +++++++++++++++++++++
 .../apache/camel/builder/AdviceWithBuilder.java    |   4 +-
 .../org/apache/camel/reifier/RouteReifier.java     |  24 ++-
 3 files changed, 187 insertions(+), 15 deletions(-)

diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWith.java b/core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWith.java
new file mode 100644
index 0000000..a65ef80
--- /dev/null
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWith.java
@@ -0,0 +1,174 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.camel.builder;
+
+import java.util.List;
+
+import org.apache.camel.CamelContext;
+import org.apache.camel.ExtendedCamelContext;
+import org.apache.camel.model.Model;
+import org.apache.camel.model.RouteDefinition;
+import org.apache.camel.model.RoutesDefinition;
+import org.apache.camel.util.ObjectHelper;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Use this for using the advice with feature.
+ *
+ * Allows you to advice or enhance an existing route using a RouteBuilder style. For example you can add interceptors to
+ * intercept sending outgoing messages to assert those messages are as expected.
+ */
+public final class AdviceWith {
+
+    private static final Logger LOG = LoggerFactory.getLogger(AdviceWith.class);
+
+    private AdviceWith() {
+    }
+
+    /**
+     * Advices this route with the route builder.
+     * <p/>
+     * <b>Important:</b> It is recommended to only advice a given route once (you can of course advice multiple routes).
+     * If you do it multiple times, then it may not work as expected, especially when any kind of error handling is
+     * involved. The Camel team plan for Camel 3.0 to support this as internal refactorings in the routing engine is
+     * needed to support this properly.
+     * <p/>
+     * You can use a regular {@link RouteBuilder} but the specialized {@link AdviceWithRouteBuilder} has additional
+     * features when using the <a href="http://camel.apache.org/advicewith.html">advice with</a> feature. We therefore
+     * suggest you to use the {@link AdviceWithRouteBuilder}.
+     * <p/>
+     * The advice process will add the interceptors, on exceptions, on completions etc. configured from the route
+     * builder to this route.
+     * <p/>
+     * This is mostly used for testing purpose to add interceptors and the likes to an existing route.
+     * <p/>
+     * Will stop and remove the old route from camel context and add and start this new advised route.
+     *
+     * @param  definition   the model definition
+     * @param  camelContext the camel context
+     * @param  builder      the route builder
+     * @return              a new route which is this route merged with the route builder
+     * @throws Exception    can be thrown from the route builder
+     * @see                 AdviceWithRouteBuilder
+     */
+    public static RouteDefinition adviceWith(RouteDefinition definition, CamelContext camelContext, RouteBuilder builder)
+            throws Exception {
+        ObjectHelper.notNull(definition, "RouteDefinition");
+        ObjectHelper.notNull(camelContext, "CamelContext");
+        ObjectHelper.notNull(builder, "RouteBuilder");
+
+        if (definition.getInput() == null) {
+            throw new IllegalArgumentException("RouteDefinition has no input");
+        }
+        return doAdviceWith(definition, camelContext, builder);
+    }
+
+    private static RouteDefinition doAdviceWith(RouteDefinition definition, CamelContext camelContext, RouteBuilder builder)
+            throws Exception {
+        ObjectHelper.notNull(builder, "RouteBuilder");
+
+        LOG.debug("AdviceWith route before: {}", definition);
+        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
+        if (builder instanceof AdviceWithRouteBuilder) {
+            AdviceWithRouteBuilder arb = (AdviceWithRouteBuilder) builder;
+            arb.setOriginalRoute(definition);
+        }
+
+        // configure and prepare the routes from the builder
+        RoutesDefinition routes = builder.configureRoutes(camelContext);
+
+        // was logging enabled or disabled
+        boolean logRoutesAsXml = true;
+        if (builder instanceof AdviceWithRouteBuilder) {
+            AdviceWithRouteBuilder arb = (AdviceWithRouteBuilder) builder;
+            logRoutesAsXml = arb.isLogRouteAsXml();
+        }
+
+        LOG.debug("AdviceWith routes: {}", routes);
+
+        // we can only advice with a route builder without any routes
+        if (!builder.getRouteCollection().getRoutes().isEmpty()) {
+            throw new IllegalArgumentException(
+                    "You can only advice from a RouteBuilder which has no existing routes. Remove all routes from the route builder.");
+        }
+        // we can not advice with error handlers (if you added a new error
+        // handler in the route builder)
+        // we must check the error handler on builder is not the same as on
+        // camel context, as that would be the default
+        // context scoped error handler, in case no error handlers was
+        // configured
+        if (builder.getRouteCollection().getErrorHandlerFactory() != null
+                && ecc.getErrorHandlerFactory() != builder.getRouteCollection().getErrorHandlerFactory()) {
+            throw new IllegalArgumentException(
+                    "You can not advice with error handlers. Remove the error handlers from the route builder.");
+        }
+
+        String beforeAsXml = null;
+        if (logRoutesAsXml && LOG.isInfoEnabled()) {
+            try {
+                beforeAsXml = ecc.getModelToXMLDumper().dumpModelAsXml(camelContext, definition);
+            } catch (Throwable e) {
+                // ignore, it may be due jaxb is not on classpath etc
+            }
+        }
+
+        // stop and remove this existing route
+        model.removeRouteDefinition(definition);
+
+        // any advice with tasks we should execute first?
+        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
+        // mixed in correctly as well
+        RouteDefinition merged = routes.route(definition);
+
+        // add the new merged route
+        model.getRouteDefinitions().add(0, merged);
+
+        // log the merged route at info level to make it easier to end users to
+        // spot any mistakes they may have made
+        if (LOG.isInfoEnabled()) {
+            LOG.info("AdviceWith route after: {}", merged);
+        }
+
+        if (beforeAsXml != null && logRoutesAsXml && LOG.isInfoEnabled()) {
+            try {
+                String afterAsXml = ecc.getModelToXMLDumper().dumpModelAsXml(camelContext, merged);
+                LOG.info("Adviced route before/after as XML:\n{}\n{}", beforeAsXml, afterAsXml);
+            } catch (Throwable e) {
+                // ignore, it may be due jaxb is not on classpath etc
+            }
+        }
+
+        // If the camel context is started then we start the route
+        if (camelContext.isStarted()) {
+            model.addRouteDefinition(merged);
+        }
+        return merged;
+    }
+
+}
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWithBuilder.java b/core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWithBuilder.java
index 4fc1a71..1756ecd 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWithBuilder.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWithBuilder.java
@@ -21,7 +21,9 @@ import org.apache.camel.model.ProcessorDefinition;
 import org.apache.camel.model.RouteDefinition;
 
 /**
- * A builder when using the <a href="http://camel.apache.org/advicewith.html">advice with</a> feature.
+ * A builder when using the advice with feature.
+ *
+ * @see AdviceWith
  */
 public class AdviceWithBuilder<T extends ProcessorDefinition<?>> {
 
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 9cf9dd5..17fded9 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
@@ -32,6 +32,7 @@ import org.apache.camel.Route;
 import org.apache.camel.RuntimeCamelException;
 import org.apache.camel.ShutdownRoute;
 import org.apache.camel.ShutdownRunningTask;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.AdviceWithTask;
 import org.apache.camel.builder.RouteBuilder;
@@ -81,23 +82,18 @@ public class RouteReifier extends ProcessorReifier<RouteDefinition> {
      * <p/>
      * Will stop and remove the old route from camel context and add and start this new advised route.
      *
-     * @param  definition   the model definition
-     * @param  camelContext the camel context
-     * @param  builder      the route builder
-     * @return              a new route which is this route merged with the route builder
-     * @throws Exception    can be thrown from the route builder
-     * @see                 AdviceWithRouteBuilder
+     * @param      definition   the model definition
+     * @param      camelContext the camel context
+     * @param      builder      the route builder
+     * @return                  a new route which is this route merged with the route builder
+     * @throws     Exception    can be thrown from the route builder
+     * @see                     AdviceWithRouteBuilder
+     * @deprecated              use {@link AdviceWith#adviceWith(RouteDefinition, CamelContext, RouteBuilder)}
      */
+    @Deprecated
     public static RouteDefinition adviceWith(RouteDefinition definition, CamelContext camelContext, RouteBuilder builder)
             throws Exception {
-        ObjectHelper.notNull(definition, "RouteDefinition");
-        ObjectHelper.notNull(camelContext, "CamelContext");
-        ObjectHelper.notNull(builder, "RouteBuilder");
-
-        if (definition.getInput() == null) {
-            throw new IllegalArgumentException("RouteDefinition has no input");
-        }
-        return new RouteReifier(camelContext, definition).adviceWith(builder);
+        return AdviceWith.adviceWith(definition, camelContext, builder);
     }
 
     @Override


[camel] 01/03: camel-core - Polished

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 1472e5745ed1bdf729bad1379164dea70657127d
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Thu Oct 22 18:27:36 2020 +0200

    camel-core - Polished
---
 .../org/apache/camel/impl/DefaultCamelContext.java |  2 +-
 .../java/org/apache/camel/impl/DefaultModel.java   | 26 +++++++++++-----------
 2 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
index a15e0cf..dcff5ab 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
@@ -78,7 +78,7 @@ public class DefaultCamelContext extends SimpleCamelContext implements ModelCame
 
     private static final Logger LOG = LoggerFactory.getLogger(DefaultCamelContext.class);
 
-    private Model model = new DefaultModel(this);
+    private final Model model = new DefaultModel(this);
 
     /**
      * Creates the {@link ModelCamelContext} using {@link org.apache.camel.support.DefaultRegistry} as registry.
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultModel.java b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultModel.java
index b1d2d02..70b0b34 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultModel.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultModel.java
@@ -60,25 +60,16 @@ public class DefaultModel implements Model {
     private Map<String, DataFormatDefinition> dataFormats = new HashMap<>();
     private List<TransformerDefinition> transformers = new ArrayList<>();
     private List<ValidatorDefinition> validators = new ArrayList<>();
-    private Map<String, ServiceCallConfigurationDefinition> serviceCallConfigurations = new ConcurrentHashMap<>();
-    private Map<String, HystrixConfigurationDefinition> hystrixConfigurations = new ConcurrentHashMap<>();
-    private Map<String, Resilience4jConfigurationDefinition> resilience4jConfigurations = new ConcurrentHashMap<>();
-    private Map<String, FaultToleranceConfigurationDefinition> faultToleranceConfigurations = new ConcurrentHashMap<>();
+    private final Map<String, ServiceCallConfigurationDefinition> serviceCallConfigurations = new ConcurrentHashMap<>();
+    private final Map<String, HystrixConfigurationDefinition> hystrixConfigurations = new ConcurrentHashMap<>();
+    private final Map<String, Resilience4jConfigurationDefinition> resilience4jConfigurations = new ConcurrentHashMap<>();
+    private final Map<String, FaultToleranceConfigurationDefinition> faultToleranceConfigurations = new ConcurrentHashMap<>();
     private Function<RouteDefinition, Boolean> routeFilter;
 
     public DefaultModel(CamelContext camelContext) {
         this.camelContext = camelContext;
     }
 
-    protected static <T> T lookup(CamelContext context, String ref, Class<T> type) {
-        try {
-            return context.getRegistry().lookupByNameAndType(ref, type);
-        } catch (Exception e) {
-            // need to ignore not same type and return it as null
-            return null;
-        }
-    }
-
     public CamelContext getCamelContext() {
         return camelContext;
     }
@@ -498,4 +489,13 @@ public class DefaultModel implements Model {
         return camelContext.isStarted() && !camelContext.isStarting();
     }
 
+    private static <T> T lookup(CamelContext context, String ref, Class<T> type) {
+        try {
+            return context.getRegistry().lookupByNameAndType(ref, type);
+        } catch (Exception e) {
+            // need to ignore not same type and return it as null
+            return null;
+        }
+    }
+
 }


[camel] 03/03: CAMEL-15739: camel-core - Move AdviceWith from Reifier to Builder

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

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

commit 7b71aaf170c755fbd1021ee02fd9831f8fc6df39
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Thu Oct 22 19:01:09 2020 +0200

    CAMEL-15739: camel-core - Move AdviceWith from Reifier to Builder
---
 .../apache/camel/builder/AdviceWithRouteBuilder.java   |  3 +--
 .../org/apache/camel/impl/DefaultCamelContext.java     |  3 ++-
 .../bean/issues/BeanThisAdviceWithIssueTest.java       |  4 ++--
 .../DirectVmTwoCamelContextAdviceWithTest.java         |  4 ++--
 ...ComponentAdviceWithInterceptSendToEndpointTest.java |  4 ++--
 .../camel/component/rest/FromRestAdviceWithTest.java   |  4 ++--
 .../org/apache/camel/issues/AdviceWithCBRTest.java     |  6 +++---
 .../AdviceWithContextScopedErrorHandlerIssueTest.java  |  4 ++--
 .../camel/issues/AdviceWithErrorHandlerRemoveTest.java |  6 +++---
 .../issues/AdviceWithInterceptFromRemoveTest.java      |  6 +++---
 .../camel/issues/AdviceWithInterceptRemoveTest.java    |  6 +++---
 .../AdviceWithInterceptSendToEndpointRemoveTest.java   |  6 +++---
 ...ithInterceptSendToEndpointWithLoadbalancerTest.java |  4 ++--
 .../apache/camel/issues/AdviceWithInterceptTest.java   |  4 ++--
 .../camel/issues/AdviceWithInvalidConfiguredTest.java  |  6 +++---
 .../org/apache/camel/issues/AdviceWithIssueTest.java   | 12 ++++++------
 .../camel/issues/AdviceWithOnCompletionRemoveTest.java |  6 +++---
 .../camel/issues/AdviceWithOnCompletionTest.java       |  4 ++--
 .../issues/AdviceWithOnExceptionAndInterceptTest.java  |  4 ++--
 .../issues/AdviceWithOnExceptionMultipleIssueTest.java | 12 ++++++------
 .../camel/issues/AdviceWithOnExceptionRemoveTest.java  |  6 +++---
 .../apache/camel/issues/AdviceWithOnExceptionTest.java |  4 ++--
 .../org/apache/camel/issues/AdviceWithPolicyTest.java  |  4 ++--
 .../apache/camel/issues/AdviceWithRoutePolicyTest.java |  4 ++--
 .../AdviceWithRouteScopedErrorHandlerIssueTest.java    |  4 ++--
 .../camel/issues/AdviceWithStartTargetIssueTest.java   |  4 ++--
 .../apache/camel/issues/AdviceWithTransactedTest.java  |  4 ++--
 .../AdviceWithTwoRoutesOnExceptionIssueTest.java       |  6 +++---
 .../apache/camel/issues/AdviceWithUrlIssueTest.java    |  6 +++---
 .../camel/issues/AdviceWithWeaveByToUriCBRTest.java    |  4 ++--
 .../camel/issues/AdviceWithWeaveByTypeCBRTest.java     |  4 ++--
 .../camel/issues/ErrorHandlerAdviceIssueTest.java      |  6 +++---
 .../RouteScopedErrorHandlerAndOnExceptionTest.java     |  6 +++---
 ...nExceptionWithInterceptSendToEndpointIssueTest.java |  4 ++--
 ...hInterceptSendToEndpointIssueWithPredicateTest.java |  4 ++--
 .../camel/issues/StopRouteImpactsErrorHandlerTest.java |  6 +++---
 ...hInterceptSendToEndpointIssueWithPredicateTest.java |  4 ++--
 .../InterceptSendToEndpointWithParametersTest.java     |  4 ++--
 .../interceptor/AdviceWithAutoStartupTest.java         |  4 ++--
 .../AdviceWithMockEndpointsHavingParameterTest.java    |  4 ++--
 .../interceptor/AdviceWithMockEndpointsTest.java       |  6 +++---
 .../AdviceWithMockEndpointsWithSkipTest.java           |  4 ++--
 .../AdviceWithMockMultipleEndpointsWithSkipTest.java   |  4 ++--
 .../AdviceWithRecipientListMockEndpointsTest.java      |  4 ++--
 .../interceptor/AdviceWithReplaceFromTest.java         |  8 ++++----
 .../processor/interceptor/AdviceWithRouteIdTest.java   |  4 ++--
 .../interceptor/AdviceWithTasksMatchTest.java          |  4 ++--
 .../interceptor/AdviceWithTasksOnExceptionTest.java    |  4 ++--
 .../interceptor/AdviceWithTasksSelectTest.java         | 18 +++++++++---------
 .../processor/interceptor/AdviceWithTasksTest.java     | 12 ++++++------
 .../AdviceWithTasksToStringPatternTest.java            | 12 ++++++------
 .../camel/processor/interceptor/AdviceWithTest.java    | 10 +++++-----
 .../processor/interceptor/AdviceWithTryCatchTest.java  |  4 ++--
 .../AdviceWithTwoRoutesOnExceptionTest.java            | 10 +++++-----
 .../processor/interceptor/AdviceWithTwoRoutesTest.java | 10 +++++-----
 .../processor/interceptor/AdviceWithTypeTest.java      | 12 ++++++------
 .../interceptor/AdviceWithWeaveAfterLastSplitTest.java |  4 ++--
 .../AdviceWithWeaveByStringOnChoiceTest.java           |  4 ++--
 .../AdviceWithWeaveByTypeOnExceptionTest.java          |  4 ++--
 .../interceptor/AdviceWithWeaveFirstLastTest.java      |  6 +++---
 .../interceptor/AdviceWithWeaveLastCBRTest.java        |  6 +++---
 .../AdviceWithWeaveToUriAndAddLastTest.java            |  4 ++--
 62 files changed, 177 insertions(+), 177 deletions(-)

diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWithRouteBuilder.java b/core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWithRouteBuilder.java
index 1c89596..4f90d50 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWithRouteBuilder.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/builder/AdviceWithRouteBuilder.java
@@ -26,7 +26,6 @@ import org.apache.camel.impl.engine.InterceptSendToMockEndpointStrategy;
 import org.apache.camel.model.ModelCamelContext;
 import org.apache.camel.model.ProcessorDefinition;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.apache.camel.support.EndpointHelper;
 import org.apache.camel.support.PatternHelper;
 import org.apache.camel.util.ObjectHelper;
@@ -128,7 +127,7 @@ public abstract class AdviceWithRouteBuilder extends RouteBuilder {
             throws Exception {
         RouteDefinition rd = findRouteDefinition(camelContext, routeId);
 
-        return RouteReifier.adviceWith(rd, camelContext, new AdviceWithRouteBuilder() {
+        return AdviceWith.adviceWith(rd, camelContext, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 setLogRouteAsXml(logXml);
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
index dcff5ab..f47fdc8 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultCamelContext.java
@@ -29,6 +29,7 @@ import org.apache.camel.Predicate;
 import org.apache.camel.Processor;
 import org.apache.camel.Route;
 import org.apache.camel.ValueHolder;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.impl.engine.DefaultExecutorServiceManager;
 import org.apache.camel.impl.engine.RouteService;
@@ -467,7 +468,7 @@ public class DefaultCamelContext extends SimpleCamelContext implements ModelCame
 
     @Override
     public RouteDefinition adviceWith(RouteDefinition definition, AdviceWithRouteBuilder builder) throws Exception {
-        return RouteReifier.adviceWith(definition, this, builder);
+        return AdviceWith.adviceWith(definition, this, builder);
     }
 
     @Override
diff --git a/core/camel-core/src/test/java/org/apache/camel/component/bean/issues/BeanThisAdviceWithIssueTest.java b/core/camel-core/src/test/java/org/apache/camel/component/bean/issues/BeanThisAdviceWithIssueTest.java
index 9018ddd..61d798c 100644
--- a/core/camel-core/src/test/java/org/apache/camel/component/bean/issues/BeanThisAdviceWithIssueTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/component/bean/issues/BeanThisAdviceWithIssueTest.java
@@ -19,10 +19,10 @@ package org.apache.camel.component.bean.issues;
 import org.apache.camel.BeanScope;
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Exchange;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class BeanThisAdviceWithIssueTest extends ContextTestSupport {
@@ -46,7 +46,7 @@ public class BeanThisAdviceWithIssueTest extends ContextTestSupport {
             }
         });
 
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveAddLast().to("mock:extract");
diff --git a/core/camel-core/src/test/java/org/apache/camel/component/directvm/DirectVmTwoCamelContextAdviceWithTest.java b/core/camel-core/src/test/java/org/apache/camel/component/directvm/DirectVmTwoCamelContextAdviceWithTest.java
index 627a61c..2695a3a 100644
--- a/core/camel-core/src/test/java/org/apache/camel/component/directvm/DirectVmTwoCamelContextAdviceWithTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/component/directvm/DirectVmTwoCamelContextAdviceWithTest.java
@@ -16,10 +16,10 @@
  */
 package org.apache.camel.component.directvm;
 
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -60,7 +60,7 @@ public class DirectVmTwoCamelContextAdviceWithTest extends AbstractDirectVmTestS
         context.addRoutes(createRouteBuilder());
 
         // advice
-        RouteReifier.adviceWith(context.getRouteDefinition("step-1a"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("step-1a"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveAddLast().to("mock:results");
diff --git a/core/camel-core/src/test/java/org/apache/camel/component/properties/PropertiesComponentAdviceWithInterceptSendToEndpointTest.java b/core/camel-core/src/test/java/org/apache/camel/component/properties/PropertiesComponentAdviceWithInterceptSendToEndpointTest.java
index c3e78fe..ae9dff1 100644
--- a/core/camel-core/src/test/java/org/apache/camel/component/properties/PropertiesComponentAdviceWithInterceptSendToEndpointTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/component/properties/PropertiesComponentAdviceWithInterceptSendToEndpointTest.java
@@ -18,10 +18,10 @@ package org.apache.camel.component.properties;
 
 import org.apache.camel.CamelContext;
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class PropertiesComponentAdviceWithInterceptSendToEndpointTest extends ContextTestSupport {
@@ -29,7 +29,7 @@ public class PropertiesComponentAdviceWithInterceptSendToEndpointTest extends Co
     @Test
     public void testAdviceWithInterceptSendToEndpoint() throws Exception {
         RouteDefinition route = context.getRouteDefinition("foo");
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("{{cool.mock}}:res*").to("mock:foo");
diff --git a/core/camel-core/src/test/java/org/apache/camel/component/rest/FromRestAdviceWithTest.java b/core/camel-core/src/test/java/org/apache/camel/component/rest/FromRestAdviceWithTest.java
index 8eb828d..80903eb 100644
--- a/core/camel-core/src/test/java/org/apache/camel/component/rest/FromRestAdviceWithTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/component/rest/FromRestAdviceWithTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.component.rest;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -44,7 +44,7 @@ public class FromRestAdviceWithTest extends ContextTestSupport {
         });
 
         RouteDefinition route = context.getRouteDefinition("myRoute");
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 replaceFromWith("direct:foo");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithCBRTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithCBRTest.java
index 83073ab..235c10b 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithCBRTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithCBRTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithCBRTest extends ContextTestSupport {
@@ -28,7 +28,7 @@ public class AdviceWithCBRTest extends ContextTestSupport {
     @Test
     public void testAdviceCBR() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("foo").after().to("mock:foo2");
@@ -52,7 +52,7 @@ public class AdviceWithCBRTest extends ContextTestSupport {
     @Test
     public void testAdviceToStringCBR() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveByToString("To[mock:foo]").after().to("mock:foo2");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithContextScopedErrorHandlerIssueTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithContextScopedErrorHandlerIssueTest.java
index 487a52d..66110d9 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithContextScopedErrorHandlerIssueTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithContextScopedErrorHandlerIssueTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -29,7 +29,7 @@ public class AdviceWithContextScopedErrorHandlerIssueTest extends ContextTestSup
 
     @Test
     public void testAdviceWith() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinition("route-a"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("route-a"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("direct:bar").skipSendToOriginalEndpoint()
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithErrorHandlerRemoveTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithErrorHandlerRemoveTest.java
index 42f5244..9f768f2 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithErrorHandlerRemoveTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithErrorHandlerRemoveTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -42,7 +42,7 @@ public class AdviceWithErrorHandlerRemoveTest extends ContextTestSupport {
         getMockEndpoint("mock:d").expectedMessageCount(0);
         getMockEndpoint("mock:dead").expectedMessageCount(0);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 getOriginalRoute().errorHandler(noErrorHandler());
@@ -72,7 +72,7 @@ public class AdviceWithErrorHandlerRemoveTest extends ContextTestSupport {
         getMockEndpoint("mock:dead").expectedMessageCount(0);
         getMockEndpoint("mock:dead2").expectedMessageCount(1);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // override errorHandler by using on exception
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptFromRemoveTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptFromRemoveTest.java
index a870953..f46f78f 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptFromRemoveTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptFromRemoveTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithInterceptFromRemoveTest extends ContextTestSupport {
@@ -39,7 +39,7 @@ public class AdviceWithInterceptFromRemoveTest extends ContextTestSupport {
         getMockEndpoint("mock:d").expectedMessageCount(0);
         getMockEndpoint("mock:intercept").expectedMessageCount(0);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("myIntercept").remove();
@@ -64,7 +64,7 @@ public class AdviceWithInterceptFromRemoveTest extends ContextTestSupport {
         getMockEndpoint("mock:intercept").expectedMessageCount(0);
         getMockEndpoint("mock:intercept2").expectedMessageCount(1);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("myIntercept").replace().to("mock:intercept2");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptRemoveTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptRemoveTest.java
index 0487ed4..b0fdca1 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptRemoveTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptRemoveTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithInterceptRemoveTest extends ContextTestSupport {
@@ -39,7 +39,7 @@ public class AdviceWithInterceptRemoveTest extends ContextTestSupport {
         getMockEndpoint("mock:d").expectedMessageCount(0);
         getMockEndpoint("mock:intercept").expectedMessageCount(0);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("myIntercept").remove();
@@ -64,7 +64,7 @@ public class AdviceWithInterceptRemoveTest extends ContextTestSupport {
         getMockEndpoint("mock:intercept").expectedMessageCount(0);
         getMockEndpoint("mock:intercept2").expectedMessageCount(1);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("myIntercept").replace().to("mock:intercept2");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptSendToEndpointRemoveTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptSendToEndpointRemoveTest.java
index 8499ccf..b956b86 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptSendToEndpointRemoveTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptSendToEndpointRemoveTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithInterceptSendToEndpointRemoveTest extends ContextTestSupport {
@@ -39,7 +39,7 @@ public class AdviceWithInterceptSendToEndpointRemoveTest extends ContextTestSupp
         getMockEndpoint("mock:d").expectedMessageCount(0);
         getMockEndpoint("mock:intercept").expectedMessageCount(0);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("myIntercept").remove();
@@ -64,7 +64,7 @@ public class AdviceWithInterceptSendToEndpointRemoveTest extends ContextTestSupp
         getMockEndpoint("mock:intercept").expectedMessageCount(0);
         getMockEndpoint("mock:intercept2").expectedMessageCount(1);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("myIntercept").replace().to("mock:intercept2");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.java
index 7035e38..f3c950f 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptSendToEndpointWithLoadbalancerTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithInterceptSendToEndpointWithLoadbalancerTest extends ContextTestSupport {
@@ -40,7 +40,7 @@ public class AdviceWithInterceptSendToEndpointWithLoadbalancerTest extends Conte
         });
 
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             public void configure() throws Exception {
                 interceptSendToEndpoint("seda:end1").skipSendToOriginalEndpoint().to("mock:end");
             }
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptTest.java
index d0d9984..c8186e0 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInterceptTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithInterceptTest extends ContextTestSupport {
@@ -28,7 +28,7 @@ public class AdviceWithInterceptTest extends ContextTestSupport {
     public void testAdviceIntercept() throws Exception {
         getMockEndpoint("mock:advice").expectedMessageCount(1);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("main"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("main"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveAddFirst().to("direct:advice");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInvalidConfiguredTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInvalidConfiguredTest.java
index dce6a33..3255093 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInvalidConfiguredTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithInvalidConfiguredTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -33,7 +33,7 @@ public class AdviceWithInvalidConfiguredTest extends ContextTestSupport {
     @Test
     public void testNoErrorHandler() throws Exception {
         try {
-            RouteReifier.adviceWith(context.getRouteDefinition("route-a"), context, new AdviceWithRouteBuilder() {
+            AdviceWith.adviceWith(context.getRouteDefinition("route-a"), context, new AdviceWithRouteBuilder() {
                 @Override
                 public void configure() throws Exception {
                     errorHandler(defaultErrorHandler());
@@ -52,7 +52,7 @@ public class AdviceWithInvalidConfiguredTest extends ContextTestSupport {
     @Test
     public void testNoExtraRoutes() throws Exception {
         try {
-            RouteReifier.adviceWith(context.getRouteDefinition("route-a"), context, new AdviceWithRouteBuilder() {
+            AdviceWith.adviceWith(context.getRouteDefinition("route-a"), context, new AdviceWithRouteBuilder() {
                 @Override
                 public void configure() throws Exception {
                     from("direct:foo").to("mock:foo");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithIssueTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithIssueTest.java
index 65b4c6d..dace204 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithIssueTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithIssueTest.java
@@ -19,10 +19,10 @@ package org.apache.camel.issues;
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -49,7 +49,7 @@ public class AdviceWithIssueTest extends ContextTestSupport {
     public void testAdviceWithErrorHandler() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
         try {
-            RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+            AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
                 @Override
                 public void configure() throws Exception {
                     errorHandler(deadLetterChannel("mock:dead"));
@@ -65,7 +65,7 @@ public class AdviceWithIssueTest extends ContextTestSupport {
     @Test
     public void testAdviceWithOnException() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 onException(IllegalArgumentException.class).handled(true).to("mock:error");
@@ -84,7 +84,7 @@ public class AdviceWithIssueTest extends ContextTestSupport {
     @Test
     public void testAdviceWithInterceptFrom() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptFrom().to("mock:from");
@@ -103,7 +103,7 @@ public class AdviceWithIssueTest extends ContextTestSupport {
     @Test
     public void testAdviceWithInterceptSendToEndpoint() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock:result").to("mock:to");
@@ -122,7 +122,7 @@ public class AdviceWithIssueTest extends ContextTestSupport {
     @Test
     public void testAdviceWithOnCompletion() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 onCompletion().to("mock:done");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnCompletionRemoveTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnCompletionRemoveTest.java
index 1178050..ba8233f 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnCompletionRemoveTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnCompletionRemoveTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithOnCompletionRemoveTest extends ContextTestSupport {
@@ -39,7 +39,7 @@ public class AdviceWithOnCompletionRemoveTest extends ContextTestSupport {
         getMockEndpoint("mock:d").expectedMessageCount(0);
         getMockEndpoint("mock:done").expectedMessageCount(0);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("myCompletion").remove();
@@ -64,7 +64,7 @@ public class AdviceWithOnCompletionRemoveTest extends ContextTestSupport {
         getMockEndpoint("mock:done").expectedMessageCount(0);
         getMockEndpoint("mock:done2").expectedMessageCount(1);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("myCompletion").replace().onCompletion().to("mock:done2");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnCompletionTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnCompletionTest.java
index 6f318cb..4f5931c 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnCompletionTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnCompletionTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithOnCompletionTest extends ContextTestSupport {
@@ -30,7 +30,7 @@ public class AdviceWithOnCompletionTest extends ContextTestSupport {
         getMockEndpoint("mock:advice").expectedMessageCount(1);
         getMockEndpoint("mock:result").expectedMessageCount(1);
 
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveAddFirst().to("mock:advice");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionAndInterceptTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionAndInterceptTest.java
index bb27634..54f9861 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionAndInterceptTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionAndInterceptTest.java
@@ -22,10 +22,10 @@ import java.sql.SQLException;
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -63,7 +63,7 @@ public class AdviceWithOnExceptionAndInterceptTest extends ContextTestSupport {
         });
 
         RouteDefinition routeDefinition = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(routeDefinition, context, new MyAdviceWithRouteBuilder());
+        AdviceWith.adviceWith(routeDefinition, context, new MyAdviceWithRouteBuilder());
         context.start();
 
         getMockEndpoint("mock:a").expectedMessageCount(0);
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionMultipleIssueTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionMultipleIssueTest.java
index 8071d59..b967580 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionMultipleIssueTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionMultipleIssueTest.java
@@ -19,9 +19,9 @@ package org.apache.camel.issues;
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -51,7 +51,7 @@ public class AdviceWithOnExceptionMultipleIssueTest extends ContextTestSupport {
     public void testSimpleMultipleAdvice() throws Exception {
         context.addRoutes(createRouteBuilder());
 
-        RouteReifier.adviceWith(context.getRouteDefinition("RouteA"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("RouteA"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock:resultA").process(new Processor() {
@@ -62,7 +62,7 @@ public class AdviceWithOnExceptionMultipleIssueTest extends ContextTestSupport {
             }
         });
 
-        RouteReifier.adviceWith(context.getRouteDefinition("RouteB"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("RouteB"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
             }
@@ -79,7 +79,7 @@ public class AdviceWithOnExceptionMultipleIssueTest extends ContextTestSupport {
     public void testMultipleAdviceWithExceptionThrown() throws Exception {
         context.addRoutes(createRouteBuilder());
 
-        RouteReifier.adviceWith(context.getRouteDefinition("RouteA"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("RouteA"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock:resultA").process(new Processor() {
@@ -102,7 +102,7 @@ public class AdviceWithOnExceptionMultipleIssueTest extends ContextTestSupport {
     public void testMultipleAdvice() throws Exception {
         context.addRoutes(createRouteBuilder());
 
-        RouteReifier.adviceWith(context.getRouteDefinition("RouteA"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("RouteA"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock:resultA").process(new Processor() {
@@ -114,7 +114,7 @@ public class AdviceWithOnExceptionMultipleIssueTest extends ContextTestSupport {
             }
         });
 
-        RouteReifier.adviceWith(context.getRouteDefinition("RouteB"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("RouteB"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
             }
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionRemoveTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionRemoveTest.java
index 27b23dc..ae88300 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionRemoveTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionRemoveTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -42,7 +42,7 @@ public class AdviceWithOnExceptionRemoveTest extends ContextTestSupport {
         getMockEndpoint("mock:d").expectedMessageCount(0);
         getMockEndpoint("mock:dead").expectedMessageCount(0);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("myException").remove();
@@ -72,7 +72,7 @@ public class AdviceWithOnExceptionRemoveTest extends ContextTestSupport {
         getMockEndpoint("mock:dead").expectedMessageCount(0);
         getMockEndpoint("mock:dead2").expectedMessageCount(1);
 
-        RouteReifier.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("foo"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("myException").replace().onException(Exception.class).handled(true).to("mock:dead2");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionTest.java
index b038e24..1b5894f 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithOnExceptionTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithOnExceptionTest extends ContextTestSupport {
@@ -28,7 +28,7 @@ public class AdviceWithOnExceptionTest extends ContextTestSupport {
     @Test
     public void testAdviceWithOnException() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("b").after().to("mock:result");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithPolicyTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithPolicyTest.java
index 2237174..9b98a17 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithPolicyTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithPolicyTest.java
@@ -20,10 +20,10 @@ import org.apache.camel.ContextTestSupport;
 import org.apache.camel.NamedNode;
 import org.apache.camel.Processor;
 import org.apache.camel.Route;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.apache.camel.spi.Policy;
 import org.junit.jupiter.api.Test;
 
@@ -32,7 +32,7 @@ public class AdviceWithPolicyTest extends ContextTestSupport {
     @Test
     public void testAdviceWithPolicy() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("b").after().to("mock:result");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithRoutePolicyTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithRoutePolicyTest.java
index e9dca23..3ee5cb6 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithRoutePolicyTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithRoutePolicyTest.java
@@ -19,10 +19,10 @@ package org.apache.camel.issues;
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Exchange;
 import org.apache.camel.Route;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.apache.camel.support.RoutePolicySupport;
 import org.junit.jupiter.api.Test;
 
@@ -43,7 +43,7 @@ public class AdviceWithRoutePolicyTest extends ContextTestSupport {
     @Test
     public void testAdviceRoutePolicyRemoved() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // remove the route policy so we can test without it
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithRouteScopedErrorHandlerIssueTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithRouteScopedErrorHandlerIssueTest.java
index 4796e08..21310ff 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithRouteScopedErrorHandlerIssueTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithRouteScopedErrorHandlerIssueTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -29,7 +29,7 @@ public class AdviceWithRouteScopedErrorHandlerIssueTest extends ContextTestSuppo
 
     @Test
     public void testAdviceWith() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinition("route-a"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("route-a"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("direct:bar").skipSendToOriginalEndpoint()
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithStartTargetIssueTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithStartTargetIssueTest.java
index 12f5740..6acd13d 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithStartTargetIssueTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithStartTargetIssueTest.java
@@ -22,9 +22,9 @@ import org.apache.camel.Exchange;
 import org.apache.camel.ExtendedCamelContext;
 import org.apache.camel.NamedNode;
 import org.apache.camel.Processor;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.apache.camel.spi.InterceptStrategy;
 import org.apache.camel.support.processor.DelegateAsyncProcessor;
 import org.junit.jupiter.api.Test;
@@ -38,7 +38,7 @@ public class AdviceWithStartTargetIssueTest extends ContextTestSupport {
 
     @Test
     public void testAdvised() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock:foo").skipSendToOriginalEndpoint().to("log:foo").to("mock:advised");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithTransactedTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithTransactedTest.java
index e91b643..c931aae 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithTransactedTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithTransactedTest.java
@@ -20,9 +20,9 @@ import org.apache.camel.ContextTestSupport;
 import org.apache.camel.NamedNode;
 import org.apache.camel.Processor;
 import org.apache.camel.Route;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.apache.camel.spi.Policy;
 import org.junit.jupiter.api.Test;
 
@@ -33,7 +33,7 @@ public class AdviceWithTransactedTest extends ContextTestSupport {
         getMockEndpoint("mock:result").expectedMessageCount(1);
         getMockEndpoint("mock:advice").expectedMessageCount(1);
 
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveAddFirst().to("mock:advice");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithTwoRoutesOnExceptionIssueTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithTwoRoutesOnExceptionIssueTest.java
index 2aa1a2f..9588bb2 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithTwoRoutesOnExceptionIssueTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithTwoRoutesOnExceptionIssueTest.java
@@ -19,9 +19,9 @@ package org.apache.camel.issues;
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -33,14 +33,14 @@ public class AdviceWithTwoRoutesOnExceptionIssueTest extends ContextTestSupport
 
     @Test
     public void testAdviceWith() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinition("a"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("a"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock:a").skipSendToOriginalEndpoint().to("mock:error");
             }
         });
 
-        RouteReifier.adviceWith(context.getRouteDefinition("b"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("b"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock:b").skipSendToOriginalEndpoint().to("mock:error");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithUrlIssueTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithUrlIssueTest.java
index ac28845..53ce83a 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithUrlIssueTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithUrlIssueTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -39,7 +39,7 @@ public class AdviceWithUrlIssueTest extends ContextTestSupport {
 
     @Test
     public void testProducerWithDifferentUri() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinition("sedaroute"), context, new Advice());
+        AdviceWith.adviceWith(context.getRouteDefinition("sedaroute"), context, new Advice());
 
         getMockEndpoint("mock:target").expectedMessageCount(0);
         getMockEndpoint("mock:target2").expectedMessageCount(1);
@@ -51,7 +51,7 @@ public class AdviceWithUrlIssueTest extends ContextTestSupport {
 
     @Test
     public void testProducerWithSameUri() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinition("sedaroute"), context, new Advice());
+        AdviceWith.adviceWith(context.getRouteDefinition("sedaroute"), context, new Advice());
 
         getMockEndpoint("mock:target").expectedMessageCount(0);
         getMockEndpoint("mock:target2").expectedMessageCount(1);
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithWeaveByToUriCBRTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithWeaveByToUriCBRTest.java
index c3cdcc5..cb58565 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithWeaveByToUriCBRTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithWeaveByToUriCBRTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithWeaveByToUriCBRTest extends ContextTestSupport {
@@ -28,7 +28,7 @@ public class AdviceWithWeaveByToUriCBRTest extends ContextTestSupport {
     @Test
     public void testAdviceCBR() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveByToUri("direct:branch*").replace().to("mock:foo");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithWeaveByTypeCBRTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithWeaveByTypeCBRTest.java
index 9831f0f..0a03d89 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithWeaveByTypeCBRTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/AdviceWithWeaveByTypeCBRTest.java
@@ -17,17 +17,17 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.ChoiceDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithWeaveByTypeCBRTest extends ContextTestSupport {
 
     @Test
     public void testWeaveByType() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveByType(ChoiceDefinition.class).replace().to("mock:baz");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/ErrorHandlerAdviceIssueTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/ErrorHandlerAdviceIssueTest.java
index af417a2..7dbbd55 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/ErrorHandlerAdviceIssueTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/ErrorHandlerAdviceIssueTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -31,7 +31,7 @@ public class ErrorHandlerAdviceIssueTest extends ContextTestSupport {
     @Test
     public void testErrorHandlerAdvice() throws Exception {
         RouteDefinition foo = context.getRouteDefinition("foo");
-        RouteReifier.adviceWith(foo, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(foo, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("seda:*").skipSendToOriginalEndpoint()
@@ -40,7 +40,7 @@ public class ErrorHandlerAdviceIssueTest extends ContextTestSupport {
         });
 
         RouteDefinition error = context.getRouteDefinition("error");
-        RouteReifier.adviceWith(error, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(error, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("file:*").skipSendToOriginalEndpoint().to("mock:file");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedErrorHandlerAndOnExceptionTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedErrorHandlerAndOnExceptionTest.java
index 5af77d4..16b6601 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedErrorHandlerAndOnExceptionTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedErrorHandlerAndOnExceptionTest.java
@@ -22,10 +22,10 @@ import java.net.ConnectException;
 import org.apache.camel.CamelExecutionException;
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.LoggingLevel;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -39,7 +39,7 @@ public class RouteScopedErrorHandlerAndOnExceptionTest extends ContextTestSuppor
     @Test
     public void testOnException() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("seda:*").skipSendToOriginalEndpoint().throwException(new ConnectException("Forced"));
@@ -65,7 +65,7 @@ public class RouteScopedErrorHandlerAndOnExceptionTest extends ContextTestSuppor
     @Test
     public void testErrorHandler() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("seda:*").skipSendToOriginalEndpoint()
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedOnExceptionWithInterceptSendToEndpointIssueTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedOnExceptionWithInterceptSendToEndpointIssueTest.java
index e8f9765..6285f06 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedOnExceptionWithInterceptSendToEndpointIssueTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedOnExceptionWithInterceptSendToEndpointIssueTest.java
@@ -21,10 +21,10 @@ import java.net.ConnectException;
 import org.apache.camel.CamelExecutionException;
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.LoggingLevel;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -38,7 +38,7 @@ public class RouteScopedOnExceptionWithInterceptSendToEndpointIssueTest extends
     @Test
     public void testIssue() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("seda:*").skipSendToOriginalEndpoint().throwException(new ConnectException("Forced"));
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedOnExceptionWithInterceptSendToEndpointIssueWithPredicateTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedOnExceptionWithInterceptSendToEndpointIssueWithPredicateTest.java
index 4c763df..e30b9c7 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedOnExceptionWithInterceptSendToEndpointIssueWithPredicateTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/RouteScopedOnExceptionWithInterceptSendToEndpointIssueWithPredicateTest.java
@@ -24,11 +24,11 @@ import org.apache.camel.Exchange;
 import org.apache.camel.LoggingLevel;
 import org.apache.camel.Predicate;
 import org.apache.camel.Processor;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.PredicateBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -46,7 +46,7 @@ public class RouteScopedOnExceptionWithInterceptSendToEndpointIssueWithPredicate
                 header(Exchange.REDELIVERY_COUNTER).isLessThan(5));
 
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("seda:*").skipSendToOriginalEndpoint().process(new Processor() {
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/StopRouteImpactsErrorHandlerTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/StopRouteImpactsErrorHandlerTest.java
index 453ce09..ea034e7 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/StopRouteImpactsErrorHandlerTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/StopRouteImpactsErrorHandlerTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.issues;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -31,7 +31,7 @@ public class StopRouteImpactsErrorHandlerTest extends ContextTestSupport {
     @Test
     public void testIssue() throws Exception {
         RouteDefinition testRoute = context.getRouteDefinition("TestRoute");
-        RouteReifier.adviceWith(testRoute, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(testRoute, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("seda:*").skipSendToOriginalEndpoint().to("log:seda")
@@ -40,7 +40,7 @@ public class StopRouteImpactsErrorHandlerTest extends ContextTestSupport {
         });
 
         RouteDefinition smtpRoute = context.getRouteDefinition("smtpRoute");
-        RouteReifier.adviceWith(smtpRoute, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(smtpRoute, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("smtp*").to("log:smtp").skipSendToOriginalEndpoint().to("mock:smtp");
diff --git a/core/camel-core/src/test/java/org/apache/camel/issues/TwoRouteScopedOnExceptionWithInterceptSendToEndpointIssueWithPredicateTest.java b/core/camel-core/src/test/java/org/apache/camel/issues/TwoRouteScopedOnExceptionWithInterceptSendToEndpointIssueWithPredicateTest.java
index c3306c4..7deef4d 100644
--- a/core/camel-core/src/test/java/org/apache/camel/issues/TwoRouteScopedOnExceptionWithInterceptSendToEndpointIssueWithPredicateTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/issues/TwoRouteScopedOnExceptionWithInterceptSendToEndpointIssueWithPredicateTest.java
@@ -24,11 +24,11 @@ import org.apache.camel.Exchange;
 import org.apache.camel.LoggingLevel;
 import org.apache.camel.Predicate;
 import org.apache.camel.Processor;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.PredicateBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -46,7 +46,7 @@ public class TwoRouteScopedOnExceptionWithInterceptSendToEndpointIssueWithPredic
                 header(Exchange.REDELIVERY_COUNTER).isLessThan(5));
 
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("seda:*").skipSendToOriginalEndpoint().process(new Processor() {
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/intercept/InterceptSendToEndpointWithParametersTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/intercept/InterceptSendToEndpointWithParametersTest.java
index db24e20..2de7475 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/intercept/InterceptSendToEndpointWithParametersTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/intercept/InterceptSendToEndpointWithParametersTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.processor.intercept;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class InterceptSendToEndpointWithParametersTest extends ContextTestSupport {
@@ -28,7 +28,7 @@ public class InterceptSendToEndpointWithParametersTest extends ContextTestSuppor
     @Test
     public void testInterceptSendToEndpoint() throws Exception {
         RouteDefinition route = context.getRouteDefinitions().get(0);
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("log*").to("mock:http").skipSendToOriginalEndpoint();
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithAutoStartupTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithAutoStartupTest.java
index 89aeb5c..2c2d10b 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithAutoStartupTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithAutoStartupTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertFalse;
@@ -32,7 +32,7 @@ public class AdviceWithAutoStartupTest extends ContextTestSupport {
         assertFalse(context.getRouteController().getRouteStatus("foo").isStarted());
         assertFalse(context.getRouteController().getRouteStatus("bar").isStarted());
 
-        RouteReifier.adviceWith(context.getRouteDefinition("bar"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("bar"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 replaceFromWith("seda:newBar");
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsHavingParameterTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsHavingParameterTest.java
index 9c4484d..a29bd05 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsHavingParameterTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsHavingParameterTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertNotNull;
@@ -40,7 +40,7 @@ public class AdviceWithMockEndpointsHavingParameterTest extends ContextTestSuppo
     public void testAdvisedMockEndpoints() throws Exception {
         // advice the first route using the inlined AdviceWith route builder
         // which has extended capabilities than the regular route builder
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(1), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(1), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // mock all endpoints (will mock in all routes)
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsTest.java
index ab960d8..3468b9e 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertNotNull;
@@ -42,7 +42,7 @@ public class AdviceWithMockEndpointsTest extends ContextTestSupport {
     public void testAdvisedMockEndpoints() throws Exception {
         // advice the first route using the inlined AdviceWith route builder
         // which has extended capabilities than the regular route builder
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // mock all endpoints
@@ -78,7 +78,7 @@ public class AdviceWithMockEndpointsTest extends ContextTestSupport {
     public void testAdvisedMockEndpointsWithPattern() throws Exception {
         // advice the first route using the inlined AdviceWith route builder
         // which has extended capabilities than the regular route builder
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // mock only log endpoints
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsWithSkipTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsWithSkipTest.java
index 8961bf4..1c73abb 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsWithSkipTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockEndpointsWithSkipTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.seda.SedaEndpoint;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -32,7 +32,7 @@ public class AdviceWithMockEndpointsWithSkipTest extends ContextTestSupport {
     public void testAdvisedMockEndpointsWithSkip() throws Exception {
         // advice the first route using the inlined AdviceWith route builder
         // which has extended capabilities than the regular route builder
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // mock sending to direct:foo and skip send to it
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockMultipleEndpointsWithSkipTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockMultipleEndpointsWithSkipTest.java
index 965e2ba..c37f83e 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockMultipleEndpointsWithSkipTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithMockMultipleEndpointsWithSkipTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.seda.SedaEndpoint;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -33,7 +33,7 @@ public class AdviceWithMockMultipleEndpointsWithSkipTest extends ContextTestSupp
     public void testAdvisedMockEndpointsWithSkip() throws Exception {
         // advice the first route using the inlined AdviceWith route builder
         // which has extended capabilities than the regular route builder
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // mock sending to direct:foo and direct:bar and skip send to it
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithRecipientListMockEndpointsTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithRecipientListMockEndpointsTest.java
index f4d71c0..1946d93 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithRecipientListMockEndpointsTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithRecipientListMockEndpointsTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithRecipientListMockEndpointsTest extends ContextTestSupport {
@@ -28,7 +28,7 @@ public class AdviceWithRecipientListMockEndpointsTest extends ContextTestSupport
     public void testAdvisedMockEndpoints() throws Exception {
         // advice the second route using the inlined AdviceWith route builder
         // which has extended capabilities than the regular route builder
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(1), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(1), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // mock all endpoints
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithReplaceFromTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithReplaceFromTest.java
index e58bd83..f084336 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithReplaceFromTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithReplaceFromTest.java
@@ -20,9 +20,9 @@ import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Endpoint;
 import org.apache.camel.FailedToCreateRouteException;
 import org.apache.camel.NoSuchEndpointException;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.fail;
@@ -34,7 +34,7 @@ public class AdviceWithReplaceFromTest extends ContextTestSupport {
 
     @Test
     public void testReplaceFromUri() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // replace the input in the route with a new endpoint uri
@@ -54,7 +54,7 @@ public class AdviceWithReplaceFromTest extends ContextTestSupport {
     public void testReplaceFromEndpoint() throws Exception {
         final Endpoint endpoint = context.getEndpoint("seda:foo");
 
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // replace the input in the route with a new endpoint
@@ -73,7 +73,7 @@ public class AdviceWithReplaceFromTest extends ContextTestSupport {
     @Test
     public void testReplaceFromInvalidUri() throws Exception {
         try {
-            RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+            AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
                 @Override
                 public void configure() throws Exception {
                     replaceFromWith("xxx:foo");
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithRouteIdTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithRouteIdTest.java
index 94df8c8..50dc54d 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithRouteIdTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithRouteIdTest.java
@@ -16,9 +16,9 @@
  */
 package org.apache.camel.processor.interceptor;
 
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithRouteIdTest extends AdviceWithTest {
@@ -26,7 +26,7 @@ public class AdviceWithRouteIdTest extends AdviceWithTest {
     @Override
     @Test
     public void testAdvised() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinition("myRoute"), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinition("myRoute"), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock:foo").skipSendToOriginalEndpoint().to("log:foo").to("mock:advised");
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksMatchTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksMatchTest.java
index 1626bfe..90589cb 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksMatchTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksMatchTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -29,7 +29,7 @@ public class AdviceWithTasksMatchTest extends ContextTestSupport {
 
     @Test
     public void testReplaceMultipleIds() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // replace all gold id's with the following route path
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksOnExceptionTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksOnExceptionTest.java
index 7176cca..51ed73e 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksOnExceptionTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksOnExceptionTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -29,7 +29,7 @@ public class AdviceWithTasksOnExceptionTest extends ContextTestSupport {
 
     @Test
     public void testBeforeWithOnException() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // weave the node in the route which has id = bar
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksSelectTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksSelectTest.java
index edd86db..6a2336c 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksSelectTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksSelectTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -32,7 +32,7 @@ public class AdviceWithTasksSelectTest extends ContextTestSupport {
 
     @Test
     public void testSelectFirst() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // should only match the first
@@ -54,7 +54,7 @@ public class AdviceWithTasksSelectTest extends ContextTestSupport {
 
     @Test
     public void testSelectLast() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // should only match the last
@@ -76,7 +76,7 @@ public class AdviceWithTasksSelectTest extends ContextTestSupport {
 
     @Test
     public void testSelectIndexZero() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // should match the first index (0 based)
@@ -98,7 +98,7 @@ public class AdviceWithTasksSelectTest extends ContextTestSupport {
 
     @Test
     public void testSelectIndexOne() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // should match the second index (0 based)
@@ -120,7 +120,7 @@ public class AdviceWithTasksSelectTest extends ContextTestSupport {
 
     @Test
     public void testSelectIndexTwo() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // should match the third index (0 based)
@@ -143,7 +143,7 @@ public class AdviceWithTasksSelectTest extends ContextTestSupport {
     @Test
     public void testSelectIndexOutOfBounds() throws Exception {
         try {
-            RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+            AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
                 @Override
                 public void configure() throws Exception {
                     // should be out of bounds
@@ -158,7 +158,7 @@ public class AdviceWithTasksSelectTest extends ContextTestSupport {
 
     @Test
     public void testSelectRangeZeroOne() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // should match the first two (0-based)
@@ -180,7 +180,7 @@ public class AdviceWithTasksSelectTest extends ContextTestSupport {
 
     @Test
     public void testSelectRangeOneTwo() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // should match the 2nd and 3rd (0-based)
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksTest.java
index ab258db..0a7ba24 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -33,7 +33,7 @@ public class AdviceWithTasksTest extends ContextTestSupport {
     @Test
     public void testUnknownId() throws Exception {
         try {
-            RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+            AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
                 @Override
                 public void configure() throws Exception {
                     weaveById("xxx").replace().to("mock:xxx");
@@ -48,7 +48,7 @@ public class AdviceWithTasksTest extends ContextTestSupport {
     @Test
     public void testReplace() throws Exception {
         // START SNIPPET: e1
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // weave the node in the route which has id = bar
@@ -72,7 +72,7 @@ public class AdviceWithTasksTest extends ContextTestSupport {
     @Test
     public void testRemove() throws Exception {
         // START SNIPPET: e2
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // weave the node in the route which has id = bar and remove it
@@ -94,7 +94,7 @@ public class AdviceWithTasksTest extends ContextTestSupport {
     @Test
     public void testBefore() throws Exception {
         // START SNIPPET: e3
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // weave the node in the route which has id = bar
@@ -117,7 +117,7 @@ public class AdviceWithTasksTest extends ContextTestSupport {
     @Test
     public void testAfter() throws Exception {
         // START SNIPPET: e4
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // weave the node in the route which has id = bar
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksToStringPatternTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksToStringPatternTest.java
index df632bb..9c90a7e 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksToStringPatternTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTasksToStringPatternTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertTrue;
@@ -33,7 +33,7 @@ public class AdviceWithTasksToStringPatternTest extends ContextTestSupport {
     @Test
     public void testUnknownId() throws Exception {
         try {
-            RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+            AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
                 @Override
                 public void configure() throws Exception {
                     weaveByToString("xxx").replace().to("mock:xxx");
@@ -48,7 +48,7 @@ public class AdviceWithTasksToStringPatternTest extends ContextTestSupport {
     @Test
     public void testReplace() throws Exception {
         // START SNIPPET: e1
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // weave nodes in the route which has foo anywhere in their to
@@ -72,7 +72,7 @@ public class AdviceWithTasksToStringPatternTest extends ContextTestSupport {
 
     @Test
     public void testRemove() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveByToString(".*bar.*").remove();
@@ -91,7 +91,7 @@ public class AdviceWithTasksToStringPatternTest extends ContextTestSupport {
 
     @Test
     public void testBefore() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveByToString(".*bar.*").before().to("mock:a").transform(constant("Bye World"));
@@ -110,7 +110,7 @@ public class AdviceWithTasksToStringPatternTest extends ContextTestSupport {
 
     @Test
     public void testAfter() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveByToString(".*bar.*").after().to("mock:a").transform(constant("Bye World"));
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTest.java
index e37625b..b1c1c22 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTest.java
@@ -18,10 +18,10 @@ package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.CamelExecutionException;
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -43,7 +43,7 @@ public class AdviceWithTest extends ContextTestSupport {
     @Test
     public void testAdvised() throws Exception {
         // advice the first route using the inlined route builder
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // intercept sending to mock:foo and do something else
@@ -64,7 +64,7 @@ public class AdviceWithTest extends ContextTestSupport {
     @Test
     public void testAdvisedNoNewRoutesAllowed() throws Exception {
         try {
-            RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+            AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
                 @Override
                 public void configure() throws Exception {
                     from("direct:bar").to("mock:bar");
@@ -80,7 +80,7 @@ public class AdviceWithTest extends ContextTestSupport {
 
     @Test
     public void testAdvisedThrowException() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock:foo").to("mock:advised").throwException(new IllegalArgumentException("Damn"));
@@ -105,7 +105,7 @@ public class AdviceWithTest extends ContextTestSupport {
     @Test
     public void testAdvisedEmptyRoutes() throws Exception {
         try {
-            RouteReifier.adviceWith(new RouteDefinition(), context, new AdviceWithRouteBuilder() {
+            AdviceWith.adviceWith(new RouteDefinition(), context, new AdviceWithRouteBuilder() {
                 @Override
                 public void configure() throws Exception {
                     interceptSendToEndpoint("mock:foo").skipSendToOriginalEndpoint().to("log:foo").to("mock:advised");
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTryCatchTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTryCatchTest.java
index 484c14e..e79baaf 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTryCatchTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTryCatchTest.java
@@ -19,9 +19,9 @@ package org.apache.camel.processor.interceptor;
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -31,7 +31,7 @@ public class AdviceWithTryCatchTest extends ContextTestSupport {
 
     @Test
     public void testTryCatch() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveById("foo").replace().process(new Processor() {
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTwoRoutesOnExceptionTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTwoRoutesOnExceptionTest.java
index 3c6f9dc..1ec50b8 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTwoRoutesOnExceptionTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTwoRoutesOnExceptionTest.java
@@ -18,10 +18,10 @@ package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
 import org.apache.camel.Exchange;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithTwoRoutesOnExceptionTest extends ContextTestSupport {
@@ -29,7 +29,7 @@ public class AdviceWithTwoRoutesOnExceptionTest extends ContextTestSupport {
     @Test
     public void testAdviceWithA() throws Exception {
         RouteDefinition route = context.getRouteDefinition("a");
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock://a").skipSendToOriginalEndpoint()
@@ -50,7 +50,7 @@ public class AdviceWithTwoRoutesOnExceptionTest extends ContextTestSupport {
     @Test
     public void testAdviceWithB() throws Exception {
         RouteDefinition route = context.getRouteDefinition("b");
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock://b").skipSendToOriginalEndpoint()
@@ -71,7 +71,7 @@ public class AdviceWithTwoRoutesOnExceptionTest extends ContextTestSupport {
     @Test
     public void testAdviceWithAB() throws Exception {
         RouteDefinition route = context.getRouteDefinition("a");
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock://a").skipSendToOriginalEndpoint()
@@ -80,7 +80,7 @@ public class AdviceWithTwoRoutesOnExceptionTest extends ContextTestSupport {
         });
 
         route = context.getRouteDefinition("b");
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock://b").skipSendToOriginalEndpoint()
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTwoRoutesTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTwoRoutesTest.java
index 0768829..5ad1f8e 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTwoRoutesTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTwoRoutesTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.RouteDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 public class AdviceWithTwoRoutesTest extends ContextTestSupport {
@@ -28,7 +28,7 @@ public class AdviceWithTwoRoutesTest extends ContextTestSupport {
     @Test
     public void testAdviceWithA() throws Exception {
         RouteDefinition route = context.getRouteDefinition("a");
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock://a").skipSendToOriginalEndpoint().to("mock:detour");
@@ -46,7 +46,7 @@ public class AdviceWithTwoRoutesTest extends ContextTestSupport {
     @Test
     public void testAdviceWithB() throws Exception {
         RouteDefinition route = context.getRouteDefinition("b");
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock://b").skipSendToOriginalEndpoint().to("mock:detour");
@@ -64,7 +64,7 @@ public class AdviceWithTwoRoutesTest extends ContextTestSupport {
     @Test
     public void testAdviceWithAB() throws Exception {
         RouteDefinition route = context.getRouteDefinition("a");
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock://a").skipSendToOriginalEndpoint().to("mock:detour");
@@ -72,7 +72,7 @@ public class AdviceWithTwoRoutesTest extends ContextTestSupport {
         });
 
         route = context.getRouteDefinition("b");
-        RouteReifier.adviceWith(route, context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(route, context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 interceptSendToEndpoint("mock://b").skipSendToOriginalEndpoint().to("mock:detour");
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTypeTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTypeTest.java
index ae5d772..a6bb872 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTypeTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithTypeTest.java
@@ -17,13 +17,13 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.LogDefinition;
 import org.apache.camel.model.SplitDefinition;
 import org.apache.camel.model.ToDefinition;
 import org.apache.camel.model.TransformDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.*;
@@ -36,7 +36,7 @@ public class AdviceWithTypeTest extends ContextTestSupport {
     @Test
     public void testUnknownType() throws Exception {
         try {
-            RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+            AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
                 @Override
                 public void configure() throws Exception {
                     weaveByType(SplitDefinition.class).replace().to("mock:xxx");
@@ -52,7 +52,7 @@ public class AdviceWithTypeTest extends ContextTestSupport {
     @Test
     public void testReplace() throws Exception {
         // START SNIPPET: e1
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // weave by type in the route
@@ -74,7 +74,7 @@ public class AdviceWithTypeTest extends ContextTestSupport {
     @Test
     public void testRemove() throws Exception {
         // START SNIPPET: e2
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // weave the type in the route and remove it
@@ -93,7 +93,7 @@ public class AdviceWithTypeTest extends ContextTestSupport {
     @Test
     public void testBefore() throws Exception {
         // START SNIPPET: e3
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // weave the type in the route and remove it
@@ -113,7 +113,7 @@ public class AdviceWithTypeTest extends ContextTestSupport {
     @Test
     public void testAfter() throws Exception {
         // START SNIPPET: e4
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // weave the type in the route and remove it
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveAfterLastSplitTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveAfterLastSplitTest.java
index d758172..9b805dbb 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveAfterLastSplitTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveAfterLastSplitTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -30,7 +30,7 @@ public class AdviceWithWeaveAfterLastSplitTest extends ContextTestSupport {
 
     @Test
     public void testAfterLastSplit() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveAddLast().log("weaveAddLast: ${body}").to("mock:result");
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveByStringOnChoiceTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveByStringOnChoiceTest.java
index 24b33e8..7209b1e 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveByStringOnChoiceTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveByStringOnChoiceTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -29,7 +29,7 @@ public class AdviceWithWeaveByStringOnChoiceTest extends ContextTestSupport {
 
     @Test
     public void testWeaveByToStringShoultNotThrowUnsupportedOperationException() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveByToString(".*mock:foo.*").replace().to("mock:bar");
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveByTypeOnExceptionTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveByTypeOnExceptionTest.java
index 10b4b55..7077005 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveByTypeOnExceptionTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveByTypeOnExceptionTest.java
@@ -17,10 +17,10 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.model.OnExceptionDefinition;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -30,7 +30,7 @@ public class AdviceWithWeaveByTypeOnExceptionTest extends ContextTestSupport {
 
     @Test
     public void testWeaveOnException() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveByType(OnExceptionDefinition.class).after().to("mock:error");
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveFirstLastTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveFirstLastTest.java
index bce38f4..4f23f54 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveFirstLastTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveFirstLastTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -32,7 +32,7 @@ public class AdviceWithWeaveFirstLastTest extends ContextTestSupport {
     @Test
     public void testWeaveAddFirst() throws Exception {
         // START SNIPPET: e1
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // insert at first the given piece of route to the existing
@@ -55,7 +55,7 @@ public class AdviceWithWeaveFirstLastTest extends ContextTestSupport {
     @Test
     public void testWeaveAddLast() throws Exception {
         // START SNIPPET: e2
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // insert at the end of the existing route, the given piece of
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveLastCBRTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveLastCBRTest.java
index 9e70cee..f7fe683 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveLastCBRTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveLastCBRTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -29,7 +29,7 @@ public class AdviceWithWeaveLastCBRTest extends ContextTestSupport {
 
     @Test
     public void testWeaveAddLast() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 // insert at the end of the existing route, the given piece of
@@ -49,7 +49,7 @@ public class AdviceWithWeaveLastCBRTest extends ContextTestSupport {
 
     @Test
     public void testWeaveByToUriAndAddLast() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveByToUri("mock:foo").replace().to("mock:foo2");
diff --git a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveToUriAndAddLastTest.java b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveToUriAndAddLastTest.java
index 8757ac6..fdc7773 100644
--- a/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveToUriAndAddLastTest.java
+++ b/core/camel-core/src/test/java/org/apache/camel/processor/interceptor/AdviceWithWeaveToUriAndAddLastTest.java
@@ -17,9 +17,9 @@
 package org.apache.camel.processor.interceptor;
 
 import org.apache.camel.ContextTestSupport;
+import org.apache.camel.builder.AdviceWith;
 import org.apache.camel.builder.AdviceWithRouteBuilder;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.reifier.RouteReifier;
 import org.junit.jupiter.api.Test;
 
 /**
@@ -29,7 +29,7 @@ public class AdviceWithWeaveToUriAndAddLastTest extends ContextTestSupport {
 
     @Test
     public void testWeaveByToUriAndAddLast() throws Exception {
-        RouteReifier.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
+        AdviceWith.adviceWith(context.getRouteDefinitions().get(0), context, new AdviceWithRouteBuilder() {
             @Override
             public void configure() throws Exception {
                 weaveByToUri("mock:foo").replace().to("mock:foo2");