This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch uri-assembler in repository https://gitbox.apache.org/repos/asf/camel.git
commit 21ca93638a992a2a9c3bbe12e790deea1417d554 Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Fri Sep 25 12:52:53 2020 +0200 CAMEL-15567: components - Generate source code for creating endpoint uri via a map of properties. WIP --- .../camel/support/component/EndpointUriAssemblerSupport.java | 3 +++ .../camel/maven/packaging/EndpointUriAssemblerGenerator.java | 11 ++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/core/camel-support/src/main/java/org/apache/camel/support/component/EndpointUriAssemblerSupport.java b/core/camel-support/src/main/java/org/apache/camel/support/component/EndpointUriAssemblerSupport.java index 9b5a6f6..9dfa259 100644 --- a/core/camel-support/src/main/java/org/apache/camel/support/component/EndpointUriAssemblerSupport.java +++ b/core/camel-support/src/main/java/org/apache/camel/support/component/EndpointUriAssemblerSupport.java @@ -58,6 +58,9 @@ public abstract class EndpointUriAssemblerSupport { } } } + + // TODO: value == defaultValue and required = false => remove from path as that is better (eg camel-jms) + return uri; } diff --git a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointUriAssemblerGenerator.java b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointUriAssemblerGenerator.java index abba8520..ebb61f9 100644 --- a/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointUriAssemblerGenerator.java +++ b/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/EndpointUriAssemblerGenerator.java @@ -75,7 +75,7 @@ public final class EndpointUriAssemblerGenerator { w.write("\n"); for (BaseOptionModel option : model.getEndpointPathOptions()) { w.write(" uri = buildPathParameter(camelContext, syntax, uri, \"" + option.getName() + "\", " - + option.getDefaultValue() + ", " + option.isRequired() + ", parameters);\n"); + + defaultValue(option) + ", " + option.isRequired() + ", parameters);\n"); } w.write(" uri = buildQueryParameters(camelContext, uri, parameters);\n"); w.write(" return uri;\n"); @@ -108,4 +108,13 @@ public final class EndpointUriAssemblerGenerator { return base; } + private static Object defaultValue(BaseOptionModel option) { + Object obj = option.getDefaultValue(); + if (obj instanceof String) { + return "\"" + obj + "\""; + } else { + return obj; + } + } + }