[CONF] Apache Camel: Scripting Languages Context (page edited)

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[CONF] Apache Camel: Scripting Languages Context (page edited)

Dhiraj Bokde (Confluence)

Scripting Languages Context has been edited by Claus Ibsen (Sep 23, 2008).

Change summary:

CAMEL-907

(View changes)

Content:

ScriptContext

The JSR-223 scripting languages ScriptContext is pre configured with the following attributes all set at ENGINE_SCOPE:

Attribute Type Value
context org.apache.camel.CamelContext The Camel Context
exchange org.apache.camel.Exchange The current Exchange
request org.apache.camel.Message The IN message
response org.apache.camel.Message The OUT message

Attributes

You can add your own attributes with the attribute(name, value) DSL method, such as:

In the sample below we add an attribute user that is an object we already have instantiated as myUser. This object has a getFirstName() method that we want to set as header on the message. We use the groovy language to concat the first and last name into a single string that is returned.

from("direct:in").setHeader("name").groovy("'$user.firstName $user.lastName'").attribute("user", myUser").to("seda:users");

Any scripting language

Camel can run any JSR-223 scripting languages using the script DSL method such as:

from("direct:in").setHeader("firstName").script("jaskel", "user.firstName").attribute("user", myUser").to("seda:users");