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

acosentino pushed a commit to branch hoistfield-action
in repository https://gitbox.apache.org/repos/asf/camel-kamelets.git

commit 3ec006603f6e7b4e89133b06a31df65caecf39bc
Author: Andrea Cosentino <[email protected]>
AuthorDate: Mon May 10 11:21:15 2021 +0200

    Added Hoistfield action kamelet
---
 hoist-field-action.kamelet.yaml | 47 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 47 insertions(+)

diff --git a/hoist-field-action.kamelet.yaml b/hoist-field-action.kamelet.yaml
new file mode 100644
index 0000000..56bf909
--- /dev/null
+++ b/hoist-field-action.kamelet.yaml
@@ -0,0 +1,47 @@
+apiVersion: camel.apache.org/v1alpha1
+kind: Kamelet
+metadata:
+  name: hoist-field-action
+  labels:
+    camel.apache.org/kamelet.type: "action"
+  annotations:
+    camel.apache.org/kamelet.icon: 
"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjxzdmcKICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICB4bWxuczpjYz0iaHR0cDovL2NyZWF0aXZlY29tbW9ucy5vcmcvbnMjIgogICB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiCiAgIHhtbG5zOnN2Zz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCiAgIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM6c29kaXBvZGk9Imh0dHA6Ly9zb2RpcG
 [...]
+    camel.apache.org/provider: "Apache Software Foundation"
+    camel.apache.org/kamelet.group: "Actions"
+spec:
+  definition:
+    title: "Hoist Field Action"
+    description: "Wrap data in a single field"
+    required:
+      - field
+    properties:
+      field:
+        title: Field
+        description: The name of the field that will contain the event
+        type: string
+    type: object
+  dependencies:
+  - github:apache.camel-kamelets:camel-kamelets-utils:main-SNAPSHOT
+  flow:
+    from:
+      uri: kamelet:source
+      steps:
+      - choice:
+          when:
+          - simple: "${header[Content-Type]} == 'application/json'"
+            steps:
+            - unmarshal:
+                json: 
+                  library: Jackson
+                  unmarshalTypeName: com.fasterxml.jackson.databind.JsonNode
+      - set-property:
+          name: "field"
+          constant: "{{field}}"
+      - bean: "org.apache.camel.kamelets.utils.transform.HoistField"
+      - marshal:
+          json: 
+            library: Jackson
+            unmarshalTypeName: com.fasterxml.jackson.databind.JsonNode
+      - set-header:
+          name: "Content-Type"
+          constant: "application/json"

Reply via email to