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 2023/08/21 11:55:52 UTC

[camel] 13/14: CAMEL-19765: camel-core - SPI for DumpRouteStrategy.

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

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

commit 36cab8c118c50e46cbe406a20f8bb2a64e037ec4
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Mon Aug 21 13:47:43 2023 +0200

    CAMEL-19765: camel-core - SPI for DumpRouteStrategy.
---
 .../org/apache/camel/spi/DumpRoutesStrategy.java   | 24 ++++++++++++------
 .../impl/DefaultDumpRoutesStrategyConfigurer.java  |  6 +++++
 .../camel/impl/DefaultDumpRoutesStrategy.java      | 29 ++++++++++++++--------
 .../MainConfigurationPropertiesConfigurer.java     |  6 +++++
 .../camel-main-configuration-metadata.json         |  1 +
 core/camel-main/src/main/docs/main.adoc            |  3 ++-
 .../camel/main/DefaultConfigurationConfigurer.java |  1 +
 .../camel/main/DefaultConfigurationProperties.java | 22 ++++++++++++++++
 .../mbean/ManagedDumpRoutesStrategyMBean.java      |  6 +++++
 .../management/mbean/ManagedDumpRouteStrategy.java |  9 +++++++
 .../management/ManagedRouteDumpStrategyTest.java   |  3 +++
 11 files changed, 91 insertions(+), 19 deletions(-)

diff --git a/core/camel-api/src/main/java/org/apache/camel/spi/DumpRoutesStrategy.java b/core/camel-api/src/main/java/org/apache/camel/spi/DumpRoutesStrategy.java
index 74c129aad22..f67808437b5 100644
--- a/core/camel-api/src/main/java/org/apache/camel/spi/DumpRoutesStrategy.java
+++ b/core/camel-api/src/main/java/org/apache/camel/spi/DumpRoutesStrategy.java
@@ -44,6 +44,22 @@ public interface DumpRoutesStrategy extends StaticService {
      */
     void setInclude(String include);
 
+    boolean isResolvePlaceholders();
+
+    /**
+     * Whether to resolve property placeholders in the dumped output.
+     * Default is true.
+     */
+    void setResolvePlaceholders(boolean resolvePlaceholders);
+
+    boolean isUriAsParameters();
+
+    /**
+     * When dumping to YAML format, then this option controls whether endpoint URIs should be expanded into a key/value
+     * parameters.
+     */
+    void setUriAsParameters(boolean uriAsParameters);
+
     boolean isLog();
 
     /**
@@ -59,12 +75,4 @@ public interface DumpRoutesStrategy extends StaticService {
      */
     void setDirectory(String directory);
 
-    boolean isUriAsParameters();
-
-    /**
-     * When dumping to YAML format, then this option controls whether endpoint URIs should be expanded into a key/value
-     * parameters.
-     */
-    void setUriAsParameters(boolean uriAsParameters);
-
 }
diff --git a/core/camel-core-engine/src/generated/java/org/apache/camel/impl/DefaultDumpRoutesStrategyConfigurer.java b/core/camel-core-engine/src/generated/java/org/apache/camel/impl/DefaultDumpRoutesStrategyConfigurer.java
index f79a61f15ae..69ed6aad744 100644
--- a/core/camel-core-engine/src/generated/java/org/apache/camel/impl/DefaultDumpRoutesStrategyConfigurer.java
+++ b/core/camel-core-engine/src/generated/java/org/apache/camel/impl/DefaultDumpRoutesStrategyConfigurer.java
@@ -29,6 +29,8 @@ public class DefaultDumpRoutesStrategyConfigurer extends org.apache.camel.suppor
         case "Include": target.setInclude(property(camelContext, java.lang.String.class, value)); return true;
         case "log":
         case "Log": target.setLog(property(camelContext, boolean.class, value)); return true;
+        case "resolveplaceholders":
+        case "ResolvePlaceholders": target.setResolvePlaceholders(property(camelContext, boolean.class, value)); return true;
         case "uriasparameters":
         case "UriAsParameters": target.setUriAsParameters(property(camelContext, boolean.class, value)); return true;
         default: return false;
@@ -46,6 +48,8 @@ public class DefaultDumpRoutesStrategyConfigurer extends org.apache.camel.suppor
         case "Include": return java.lang.String.class;
         case "log":
         case "Log": return boolean.class;
+        case "resolveplaceholders":
+        case "ResolvePlaceholders": return boolean.class;
         case "uriasparameters":
         case "UriAsParameters": return boolean.class;
         default: return null;
@@ -64,6 +68,8 @@ public class DefaultDumpRoutesStrategyConfigurer extends org.apache.camel.suppor
         case "Include": return target.getInclude();
         case "log":
         case "Log": return target.isLog();
+        case "resolveplaceholders":
+        case "ResolvePlaceholders": return target.isResolvePlaceholders();
         case "uriasparameters":
         case "UriAsParameters": return target.isUriAsParameters();
         default: return null;
diff --git a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultDumpRoutesStrategy.java b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultDumpRoutesStrategy.java
index c18ff5c52f5..b5e2035b7eb 100644
--- a/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultDumpRoutesStrategy.java
+++ b/core/camel-core-engine/src/main/java/org/apache/camel/impl/DefaultDumpRoutesStrategy.java
@@ -62,6 +62,7 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
     private CamelContext camelContext;
 
     private String include = "routes";
+    private boolean resolvePlaceholders = true;
     private boolean uriAsParameters;
     private boolean log = true;
     private String directory;
@@ -84,6 +85,14 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
         this.include = include;
     }
 
+    public boolean isResolvePlaceholders() {
+        return resolvePlaceholders;
+    }
+
+    public void setResolvePlaceholders(boolean resolvePlaceholders) {
+        this.resolvePlaceholders = resolvePlaceholders;
+    }
+
     public boolean isLog() {
         return log;
     }
@@ -142,7 +151,7 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
                     StringBuilder sbLocal = new StringBuilder();
                     doDumpYaml(camelContext, def, resource == dummy ? null : resource, dumper, "routes", sbLocal, sbLog);
                     // dump each resource into its own file
-                    doDumpTiDisk(resource, sbLocal, "routes", "yaml");
+                    doDumpToDirectory(resource, sbLocal, "routes", "yaml");
                 }
                 if (!sbLog.isEmpty() && log) {
                     LOG.info("Dumping {} routes as YAML", size);
@@ -171,7 +180,7 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
                     StringBuilder sbLocal = new StringBuilder();
                     doDumpYaml(camelContext, def, resource == dummy ? null : resource, dumper, "rests", sbLocal, sbLog);
                     // dump each resource into its own file
-                    doDumpTiDisk(resource, sbLocal, "rests", "yaml");
+                    doDumpToDirectory(resource, sbLocal, "rests", "yaml");
                 }
                 if (!sbLog.isEmpty() && log) {
                     LOG.info("Dumping {} rests as YAML", size);
@@ -201,7 +210,7 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
                     StringBuilder sbLocal = new StringBuilder();
                     doDumpYaml(camelContext, def, resource == dummy ? null : resource, dumper, "route-templates", sbLocal, sbLog);
                     // dump each resource into its own file
-                    doDumpTiDisk(resource, sbLocal, "route-templates", "yaml");
+                    doDumpToDirectory(resource, sbLocal, "route-templates", "yaml");
                 }
                 if (!sbLog.isEmpty() && log) {
                     LOG.info("Dumping {} route-templates as YAML", size);
@@ -215,7 +224,7 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
             CamelContext camelContext, NamedNode def, Resource resource,
             ModelToYAMLDumper dumper, String kind, StringBuilder sbLocal, StringBuilder sbLog) {
         try {
-            String dump = dumper.dumpModelAsYaml(camelContext, def, true, uriAsParameters);
+            String dump = dumper.dumpModelAsYaml(camelContext, def, resolvePlaceholders, uriAsParameters);
             sbLocal.append(dump);
             appendLogDump(resource, dump, sbLog);
         } catch (Exception e) {
@@ -248,7 +257,7 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
                     StringBuilder sbLocal = new StringBuilder();
                     doDumpXml(camelContext, def, resource == dummy ? null : resource, dumper, "route", "routes", sbLocal, sbLog);
                     // dump each resource into its own file
-                    doDumpTiDisk(resource, sbLocal, "routes", "xml");
+                    doDumpToDirectory(resource, sbLocal, "routes", "xml");
                 }
                 if (!sbLog.isEmpty() && log) {
                     LOG.info("Dumping {} routes as XML", size);
@@ -277,7 +286,7 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
                     StringBuilder sbLocal = new StringBuilder();
                     doDumpXml(camelContext, def, resource == dummy ? null : resource, dumper, "rest", "rests", sbLocal, sbLog);
                     // dump each resource into its own file
-                    doDumpTiDisk(resource, sbLocal, "rests", "xml");
+                    doDumpToDirectory(resource, sbLocal, "rests", "xml");
                 }
                 if (!sbLog.isEmpty() && log) {
                     LOG.info("Dumping {} rests as XML", size);
@@ -308,7 +317,7 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
                     doDumpXml(camelContext, def, resource == dummy ? null : resource, dumper, "routeTemplate",
                             "route-templates", sbLocal, sbLog);
                     // dump each resource into its own file
-                    doDumpTiDisk(resource, sbLocal, "route-templates", "xml");
+                    doDumpToDirectory(resource, sbLocal, "route-templates", "xml");
                 }
                 if (!sbLog.isEmpty() && log) {
                     LOG.info("Dumping {} route-templates as XML", size);
@@ -322,7 +331,7 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
             CamelContext camelContext, NamedNode def, Resource resource,
             ModelToXMLDumper dumper, String replace, String kind, StringBuilder sbLocal, StringBuilder sbLog) {
         try {
-            String xml = dumper.dumpModelAsXml(camelContext, def, true);
+            String xml = dumper.dumpModelAsXml(camelContext, def, resolvePlaceholders);
             // lets separate with empty line
             xml = StringHelper.replaceFirst(xml, "xmlns=\"http://camel.apache.org/schema/spring\">",
                     "xmlns=\"http://camel.apache.org/schema/spring\">\n");
@@ -334,7 +343,7 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
         }
     }
 
-    protected void doDumpTiDisk(Resource resource, StringBuilder sbLocal, String kind, String ext) {
+    protected void doDumpToDirectory(Resource resource, StringBuilder sbLocal, String kind, String ext) {
         if (directory != null && !sbLocal.isEmpty()) {
             // make sure directory exists
             File dir = new File(directory);
@@ -352,7 +361,7 @@ public class DefaultDumpRoutesStrategy extends ServiceSupport implements DumpRou
             File target = new File(directory, name);
             try {
                 IOHelper.writeText(sbLocal.toString(), target);
-                LOG.debug("Dumped {} to file: {}", target, name);
+                LOG.info("Dumped {} to file: {}", kind, target);
             } catch (IOException e) {
                 throw new RuntimeException("Error dumping " + kind + " to file: " + target, e);
             }
diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java
index 4f8b3b4931d..288a99df147 100644
--- a/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java
+++ b/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java
@@ -79,6 +79,8 @@ public class MainConfigurationPropertiesConfigurer extends org.apache.camel.supp
         case "DumpRoutesInclude": target.setDumpRoutesInclude(property(camelContext, java.lang.String.class, value)); return true;
         case "dumprouteslog":
         case "DumpRoutesLog": target.setDumpRoutesLog(property(camelContext, boolean.class, value)); return true;
+        case "dumproutesresolveplaceholders":
+        case "DumpRoutesResolvePlaceholders": target.setDumpRoutesResolvePlaceholders(property(camelContext, boolean.class, value)); return true;
         case "dumproutesuriasparameters":
         case "DumpRoutesUriAsParameters": target.setDumpRoutesUriAsParameters(property(camelContext, boolean.class, value)); return true;
         case "durationhitexitcode":
@@ -334,6 +336,8 @@ public class MainConfigurationPropertiesConfigurer extends org.apache.camel.supp
         case "DumpRoutesInclude": return java.lang.String.class;
         case "dumprouteslog":
         case "DumpRoutesLog": return boolean.class;
+        case "dumproutesresolveplaceholders":
+        case "DumpRoutesResolvePlaceholders": return boolean.class;
         case "dumproutesuriasparameters":
         case "DumpRoutesUriAsParameters": return boolean.class;
         case "durationhitexitcode":
@@ -590,6 +594,8 @@ public class MainConfigurationPropertiesConfigurer extends org.apache.camel.supp
         case "DumpRoutesInclude": return target.getDumpRoutesInclude();
         case "dumprouteslog":
         case "DumpRoutesLog": return target.isDumpRoutesLog();
+        case "dumproutesresolveplaceholders":
+        case "DumpRoutesResolvePlaceholders": return target.isDumpRoutesResolvePlaceholders();
         case "dumproutesuriasparameters":
         case "DumpRoutesUriAsParameters": return target.isDumpRoutesUriAsParameters();
         case "durationhitexitcode":
diff --git a/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json b/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json
index 29c023fde81..e49a846be05 100644
--- a/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json
+++ b/core/camel-main/src/generated/resources/META-INF/camel-main-configuration-metadata.json
@@ -42,6 +42,7 @@
     { "name": "camel.main.dumpRoutesDirectory", "description": "Whether to save route dumps to files in the given directory. The name of the files are based on original loaded resource, or an autogenerated name.", "sourceType": "org.apache.camel.main.DefaultConfigurationProperties", "type": "string", "javaType": "java.lang.String" },
     { "name": "camel.main.dumpRoutesInclude", "description": "Controls what to include in output for route dumping. Possible values: routes, rests, routeTemplates. Multiple values can be separated by comma. Default is routes.", "sourceType": "org.apache.camel.main.DefaultConfigurationProperties", "type": "string", "javaType": "java.lang.String", "defaultValue": "routes" },
     { "name": "camel.main.dumpRoutesLog", "description": "Whether to log route dumps to Logger", "sourceType": "org.apache.camel.main.DefaultConfigurationProperties", "type": "boolean", "javaType": "boolean", "defaultValue": true },
+    { "name": "camel.main.dumpRoutesResolvePlaceholders", "description": "Whether to resolve property placeholders in the dumped output. Default is true.", "sourceType": "org.apache.camel.main.DefaultConfigurationProperties", "type": "boolean", "javaType": "boolean", "defaultValue": true },
     { "name": "camel.main.dumpRoutesUriAsParameters", "description": "When dumping routes to YAML format, then this option controls whether endpoint URIs should be expanded into a key\/value parameters.", "sourceType": "org.apache.camel.main.DefaultConfigurationProperties", "type": "boolean", "javaType": "boolean", "defaultValue": "false" },
     { "name": "camel.main.durationHitExitCode", "description": "Sets the exit code for the application if duration was hit", "sourceType": "org.apache.camel.main.MainConfigurationProperties", "type": "integer", "javaType": "int" },
     { "name": "camel.main.durationMaxAction", "description": "Controls whether the Camel application should shutdown the JVM, or stop all routes, when duration max is triggered.", "sourceType": "org.apache.camel.main.DefaultConfigurationProperties", "type": "string", "javaType": "java.lang.String", "defaultValue": "shutdown", "enum": [ "shutdown", "stop" ] },
diff --git a/core/camel-main/src/main/docs/main.adoc b/core/camel-main/src/main/docs/main.adoc
index da33b6e96c2..1764d645f0d 100644
--- a/core/camel-main/src/main/docs/main.adoc
+++ b/core/camel-main/src/main/docs/main.adoc
@@ -19,7 +19,7 @@ The following tables lists all the options:
 
 // main options: START
 === Camel Main configurations
-The camel.main supports 124 options, which are listed below.
+The camel.main supports 125 options, which are listed below.
 
 [width="100%",cols="2,5,^1,2",options="header"]
 |===
@@ -53,6 +53,7 @@ The camel.main supports 124 options, which are listed below.
 | *camel.main.dumpRoutesDirectory* | Whether to save route dumps to files in the given directory. The name of the files are based on original loaded resource, or an autogenerated name. |  | String
 | *camel.main.dumpRoutesInclude* | Controls what to include in output for route dumping. Possible values: routes, rests, routeTemplates. Multiple values can be separated by comma. Default is routes. | routes | String
 | *camel.main.dumpRoutesLog* | Whether to log route dumps to Logger | true | boolean
+| *camel.main.dumpRoutesResolve{zwsp}Placeholders* | Whether to resolve property placeholders in the dumped output. Default is true. | true | boolean
 | *camel.main.dumpRoutesUriAs{zwsp}Parameters* | When dumping routes to YAML format, then this option controls whether endpoint URIs should be expanded into a key/value parameters. | false | boolean
 | *camel.main.durationHitExitCode* | Sets the exit code for the application if duration was hit |  | int
 | *camel.main.durationMaxAction* | Controls whether the Camel application should shutdown the JVM, or stop all routes, when duration max is triggered. | shutdown | String
diff --git a/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationConfigurer.java b/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationConfigurer.java
index 410e5e9272b..f55b933bc1a 100644
--- a/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationConfigurer.java
+++ b/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationConfigurer.java
@@ -264,6 +264,7 @@ public final class DefaultConfigurationConfigurer {
             drs.setInclude(config.getDumpRoutesInclude());
             drs.setLog(config.isDumpRoutesLog());
             drs.setUriAsParameters(config.isDumpRoutesUriAsParameters());
+            drs.setResolvePlaceholders(config.isDumpRoutesResolvePlaceholders());
             drs.setDirectory(config.getDumpRoutesDirectory());
         }
         if (config.isContextReloadEnabled() && camelContext.hasService(ContextReloadStrategy.class) == null) {
diff --git a/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java
index 481d960bec3..f6a79b4b0ba 100644
--- a/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java
+++ b/core/camel-main/src/main/java/org/apache/camel/main/DefaultConfigurationProperties.java
@@ -133,6 +133,7 @@ public abstract class DefaultConfigurationProperties<T> {
     private String dumpRoutes;
     private String dumpRoutesInclude = "routes";
     private boolean dumpRoutesLog = true;
+    private boolean dumpRoutesResolvePlaceholders = true;
     private boolean dumpRoutesUriAsParameters;
     private String dumpRoutesDirectory;
     private Map<String, String> globalOptions;
@@ -1414,6 +1415,18 @@ public abstract class DefaultConfigurationProperties<T> {
         this.dumpRoutesLog = dumpRoutesLog;
     }
 
+    public boolean isDumpRoutesResolvePlaceholders() {
+        return dumpRoutesResolvePlaceholders;
+    }
+
+    /**
+     * Whether to resolve property placeholders in the dumped output.
+     * Default is true.
+     */
+    public void setDumpRoutesResolvePlaceholders(boolean dumpRoutesResolvePlaceholders) {
+        this.dumpRoutesResolvePlaceholders = dumpRoutesResolvePlaceholders;
+    }
+
     public boolean isDumpRoutesUriAsParameters() {
         return dumpRoutesUriAsParameters;
     }
@@ -2648,6 +2661,15 @@ public abstract class DefaultConfigurationProperties<T> {
         return (T) this;
     }
 
+    /**
+     * Whether to resolve property placeholders in the dumped output.
+     * Default is true.
+     */
+    public T withDumpRoutesResolvePlaceholders(boolean dumpRoutesResolvePlaceholders) {
+        this.dumpRoutesResolvePlaceholders = dumpRoutesResolvePlaceholders;
+        return (T) this;
+    }
+
     /**
      * When dumping routes to YAML format, then this option controls whether endpoint URIs should be expanded into a
      * key/value parameters.
diff --git a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedDumpRoutesStrategyMBean.java b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedDumpRoutesStrategyMBean.java
index 69f76a9f632..94e9aafd6c3 100644
--- a/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedDumpRoutesStrategyMBean.java
+++ b/core/camel-management-api/src/main/java/org/apache/camel/api/management/mbean/ManagedDumpRoutesStrategyMBean.java
@@ -54,4 +54,10 @@ public interface ManagedDumpRoutesStrategyMBean {
     @ManagedAttribute(description = "When dumping to YAML format, then this option controls whether endpoint URIs should be expanded into a key/value parameters")
     void setUriAsParameters(boolean uriAsParameters);
 
+    @ManagedAttribute(description = "")
+    boolean isResolvePlaceholders();
+
+    @ManagedAttribute(description = "Whether to resolve property placeholders in the dumped output. Default is true.")
+    void setResolvePlaceholders(boolean resolvePlaceholders);
+
 }
diff --git a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedDumpRouteStrategy.java b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedDumpRouteStrategy.java
index 51e311c6404..8cf89153560 100644
--- a/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedDumpRouteStrategy.java
+++ b/core/camel-management/src/main/java/org/apache/camel/management/mbean/ManagedDumpRouteStrategy.java
@@ -100,4 +100,13 @@ public class ManagedDumpRouteStrategy implements ManagedDumpRoutesStrategyMBean
         dumpRoutesStrategy.setUriAsParameters(uriAsParameters);
     }
 
+    @Override
+    public boolean isResolvePlaceholders() {
+        return dumpRoutesStrategy.isResolvePlaceholders();
+    }
+
+    @Override
+    public void setResolvePlaceholders(boolean resolvePlaceholders) {
+        dumpRoutesStrategy.setResolvePlaceholders(resolvePlaceholders);
+    }
 }
diff --git a/core/camel-management/src/test/java/org/apache/camel/management/ManagedRouteDumpStrategyTest.java b/core/camel-management/src/test/java/org/apache/camel/management/ManagedRouteDumpStrategyTest.java
index 0e398db0c6c..6ed5443f28a 100644
--- a/core/camel-management/src/test/java/org/apache/camel/management/ManagedRouteDumpStrategyTest.java
+++ b/core/camel-management/src/test/java/org/apache/camel/management/ManagedRouteDumpStrategyTest.java
@@ -49,6 +49,7 @@ public class ManagedRouteDumpStrategyTest extends ManagementTestSupport {
         drd.setInclude("all");
         drd.setLog(false);
         drd.setDirectory(dir);
+        drd.setResolvePlaceholders(false);
         context.addService(drd);
 
         return context;
@@ -77,6 +78,8 @@ public class ManagedRouteDumpStrategyTest extends ManagementTestSupport {
         assertEquals("all", include);
         Boolean log = (Boolean) mbeanServer.getAttribute(on, "Log");
         assertFalse(log);
+        Boolean rp = (Boolean) mbeanServer.getAttribute(on, "ResolvePlaceholders");
+        assertFalse(rp);
 
         // dump should pre-exist
         File dir = testDirectory().toFile();