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 2022/08/11 09:52:12 UTC
[camel] branch camel-3.18.x updated: Camel 18370 (#8149)
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch camel-3.18.x
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/camel-3.18.x by this push:
new 245c9d1b0a6 Camel 18370 (#8149)
245c9d1b0a6 is described below
commit 245c9d1b0a68ff4d93355693ebbc08c7a9cf8356
Author: Claus Ibsen <cl...@gmail.com>
AuthorDate: Thu Aug 11 11:51:13 2022 +0200
Camel 18370 (#8149)
* Polished
* CAMEL-18370: camel-kamelet - RAW parameters are not resolved which causes the parameter to have RAW(xxx) as the value.
---
.../org/apache/camel/component/kamelet/KameletComponent.java | 9 ++++++++-
.../camel/component/kamelet/KameletGlobalPropertiesTest.java | 2 +-
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/components/camel-kamelet/src/main/java/org/apache/camel/component/kamelet/KameletComponent.java b/components/camel-kamelet/src/main/java/org/apache/camel/component/kamelet/KameletComponent.java
index 054b383ffcc..677a397f62b 100644
--- a/components/camel-kamelet/src/main/java/org/apache/camel/component/kamelet/KameletComponent.java
+++ b/components/camel-kamelet/src/main/java/org/apache/camel/component/kamelet/KameletComponent.java
@@ -41,6 +41,7 @@ import org.apache.camel.support.LifecycleStrategySupport;
import org.apache.camel.support.RouteTemplateHelper;
import org.apache.camel.support.service.ServiceHelper;
import org.apache.camel.util.StopWatch;
+import org.apache.camel.util.URISupport;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -108,6 +109,12 @@ public class KameletComponent extends DefaultComponent {
parameters.remove(PARAM_ROUTE_ID);
parameters.remove(PARAM_LOCATION);
+ // manually need to resolve raw parameters as input to the kamelet because
+ // resolveRawParameterValues is false
+ // this ensures that parameters such as passwords are used as-is and not encoded
+ // but this requires to use RAW() syntax in the kamelet template.
+ URISupport.resolveRawParameterValues(parameters);
+
final KameletEndpoint endpoint;
if (Kamelet.SOURCE_ID.equals(remaining) || Kamelet.SINK_ID.equals(remaining)) {
@@ -218,7 +225,7 @@ public class KameletComponent extends DefaultComponent {
//
// Add a custom converter to convert a RouteTemplateDefinition to a RouteDefinition
- // and make sure consumerU URIs are unique.
+ // and make sure consumer URIs are unique.
//
getCamelContext().adapt(ModelCamelContext.class).addRouteTemplateDefinitionConverter(
templateId,
diff --git a/components/camel-kamelet/src/test/java/org/apache/camel/component/kamelet/KameletGlobalPropertiesTest.java b/components/camel-kamelet/src/test/java/org/apache/camel/component/kamelet/KameletGlobalPropertiesTest.java
index b713f1184fd..471a763cb2f 100644
--- a/components/camel-kamelet/src/test/java/org/apache/camel/component/kamelet/KameletGlobalPropertiesTest.java
+++ b/components/camel-kamelet/src/test/java/org/apache/camel/component/kamelet/KameletGlobalPropertiesTest.java
@@ -163,7 +163,7 @@ public class KameletGlobalPropertiesTest extends CamelTestSupport {
.templateParameter("proxyPwd")
.from("kamelet:source")
.log("info")
- .to("http://localhost:8080?proxyAuthUsername={{proxyUsr}}&proxyAuthPassword={{proxyPwd}}");
+ .to("http://localhost:8080?proxyAuthUsername=RAW({{proxyUsr}})&proxyAuthPassword=RAW({{proxyPwd}})");
// template
routeTemplate("timer-source")