[ https://issues.apache.org/jira/browse/CAMEL-19749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen updated CAMEL-19749: -------------------------------- Fix Version/s: 4.4.0 (was: 4.3.0) > camel-core - Allow users to use variables in route to store data instead of > headers > ----------------------------------------------------------------------------------- > > Key: CAMEL-19749 > URL: https://issues.apache.org/jira/browse/CAMEL-19749 > Project: Camel > Issue Type: New Feature > Components: camel-core, eip > Reporter: Claus Ibsen > Assignee: Claus Ibsen > Priority: Major > Fix For: 4.4.0 > > > Users that need to do message transformation in Camel routes may find > themselves having to store data in headers / claim-check / exchange > properties from multiple sources before they have all data needed to build a > response message. > Today users are doing this in different ways. > However we may want to introduce variables that users can name and store the > data, then they can do this more intuitive, like they would do in a > programming language. > {code} > from(kafka("topic1").setVar("customer")) > .to("sql:get-order-by-cust?id=${var.customer.id}").setVar("order") > .transform().simple( ' Thank you ${var.customer.name} for ordering > ${var.order.item}')) > {code} > Then you have 2 variables > - customer > - order > Then the variable customer can be used anywhere in Camel like it was a header > with ${header.xxx} but with ${var.customer} in the simple language etc. > This proposal needs some more though and design/prototype. > But this should be done in a way that does not affect regular Camel DSL as it > is, but with variables then results during routing that usually will be > override current message body / headers, are stored in variables, that the > user assign a name and therefore better can understand what the data the > variable contains are. -- This message was sent by Atlassian Jira (v8.20.10#820010)