From 41a5a33570b10a328046286cb97ab5ac8ce811e2 Mon Sep 17 00:00:00 2001 From: Andrea Cosentino Date: Mon, 10 May 2021 15:13:13 +0200 Subject: [PATCH 1/3] Value to Key Action - Actions should not marshal into JSON if the input was not JSON --- value-to-key-action.kamelet.yaml | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/value-to-key-action.kamelet.yaml b/value-to-key-action.kamelet.yaml index dc644809e..ca41ec2f9 100644 --- a/value-to-key-action.kamelet.yaml +++ b/value-to-key-action.kamelet.yaml @@ -33,6 +33,9 @@ spec: when: - simple: "${header[Content-Type]} == 'application/json'" steps: + - set-property: + name: deserialized + constant: "true" - unmarshal: json: library: Jackson @@ -41,10 +44,14 @@ spec: name: "fields" constant: "{{fields}}" - bean: "org.apache.camel.kamelets.utils.transform.kafka.ValueToKey" - - marshal: - json: - library: Jackson - unmarshalTypeName: com.fasterxml.jackson.databind.JsonNode - - set-header: - name: "Content-Type" - constant: "application/json" + - choice: + when: + - simple: "${exchangeProperty[deserialized]} == 'true'" + steps: + - marshal: + json: + library: Jackson + unmarshalTypeName: com.fasterxml.jackson.databind.JsonNode + - set-header: + name: "Content-Type" + constant: "application/json" From dc24e4e2378be122cf8d6d514bbe0f63049a3273 Mon Sep 17 00:00:00 2001 From: Andrea Cosentino Date: Mon, 10 May 2021 15:13:52 +0200 Subject: [PATCH 2/3] Regen catalog --- .../kamelets/value-to-key-action.kamelet.yaml | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/library/camel-kamelets-catalog/src/main/resources/kamelets/value-to-key-action.kamelet.yaml b/library/camel-kamelets-catalog/src/main/resources/kamelets/value-to-key-action.kamelet.yaml index dc644809e..ca41ec2f9 100644 --- a/library/camel-kamelets-catalog/src/main/resources/kamelets/value-to-key-action.kamelet.yaml +++ b/library/camel-kamelets-catalog/src/main/resources/kamelets/value-to-key-action.kamelet.yaml @@ -33,6 +33,9 @@ spec: when: - simple: "${header[Content-Type]} == 'application/json'" steps: + - set-property: + name: deserialized + constant: "true" - unmarshal: json: library: Jackson @@ -41,10 +44,14 @@ spec: name: "fields" constant: "{{fields}}" - bean: "org.apache.camel.kamelets.utils.transform.kafka.ValueToKey" - - marshal: - json: - library: Jackson - unmarshalTypeName: com.fasterxml.jackson.databind.JsonNode - - set-header: - name: "Content-Type" - constant: "application/json" + - choice: + when: + - simple: "${exchangeProperty[deserialized]} == 'true'" + steps: + - marshal: + json: + library: Jackson + unmarshalTypeName: com.fasterxml.jackson.databind.JsonNode + - set-header: + name: "Content-Type" + constant: "application/json" From e3c41c52e04a73f0e86c2975b1301883a467ffa7 Mon Sep 17 00:00:00 2001 From: Andrea Cosentino Date: Mon, 10 May 2021 15:14:14 +0200 Subject: [PATCH 3/3] Regen --- docs/modules/ROOT/nav.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc index 729877765..69c83bd6a 100644 --- a/docs/modules/ROOT/nav.adoc +++ b/docs/modules/ROOT/nav.adoc @@ -46,7 +46,7 @@ * xref:ROOT:infinispan-source.adoc[image:kamelets/infinispan-source.svg[] Infinispan Source] * xref:ROOT:insert-field-action.adoc[image:kamelets/insert-field-action.svg[] Insert Field Action] * xref:ROOT:insert-header-action.adoc[image:kamelets/insert-header-action.svg[] Insert Header Action] -* xref:ROOT:jira-source.adoc[image:kamelets/jira-source.svg[] Jira Source]< +* xref:ROOT:jira-source.adoc[image:kamelets/jira-source.svg[] Jira Source] * xref:ROOT:json-deserialize-action.adoc[image:kamelets/json-deserialize-action.svg[] Json Deserialize Action] * xref:ROOT:json-serialize-action.adoc[image:kamelets/json-serialize-action.svg[] Json Serialize Action] * xref:ROOT:kafka-not-secured-sink.adoc[image:kamelets/kafka-not-secured-sink.svg[] Kafka Not Secured Sink]