From 682c6655c1d401a21a6a8731c0a31a67e5c37243 Mon Sep 17 00:00:00 2001 From: Andrea Cosentino Date: Mon, 10 May 2021 15:23:11 +0200 Subject: [PATCH 1/3] Replace Field Action - Actions should not marshal into JSON if the input was not JSON --- replace-field-action.kamelet.yaml | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/replace-field-action.kamelet.yaml b/replace-field-action.kamelet.yaml index 61fd23eec..c6f00b9bf 100644 --- a/replace-field-action.kamelet.yaml +++ b/replace-field-action.kamelet.yaml @@ -44,6 +44,9 @@ spec: when: - simple: "${header[Content-Type]} == 'application/json'" steps: + - set-property: + name: deserialized + constant: "true" - unmarshal: json: library: Jackson @@ -58,10 +61,14 @@ spec: name: "renames" constant: "{{renames}}" - bean: "org.apache.camel.kamelets.utils.transform.ReplaceField" - - 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 30836842ca6bf37e7fe6cd649dc1c251aa27a476 Mon Sep 17 00:00:00 2001 From: Andrea Cosentino Date: Mon, 10 May 2021 15:23:54 +0200 Subject: [PATCH 2/3] Regen catalog --- .../replace-field-action.kamelet.yaml | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/library/camel-kamelets-catalog/src/main/resources/kamelets/replace-field-action.kamelet.yaml b/library/camel-kamelets-catalog/src/main/resources/kamelets/replace-field-action.kamelet.yaml index 61fd23eec..c6f00b9bf 100644 --- a/library/camel-kamelets-catalog/src/main/resources/kamelets/replace-field-action.kamelet.yaml +++ b/library/camel-kamelets-catalog/src/main/resources/kamelets/replace-field-action.kamelet.yaml @@ -44,6 +44,9 @@ spec: when: - simple: "${header[Content-Type]} == 'application/json'" steps: + - set-property: + name: deserialized + constant: "true" - unmarshal: json: library: Jackson @@ -58,10 +61,14 @@ spec: name: "renames" constant: "{{renames}}" - bean: "org.apache.camel.kamelets.utils.transform.ReplaceField" - - 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 83d7f4e20fb672eb8248840c90f4500b74484022 Mon Sep 17 00:00:00 2001 From: Andrea Cosentino Date: Mon, 10 May 2021 15:24: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]