blob: 3ffc8d0a9a4eea7f08be763b63fc470d4b557ff7 [file] [log] [blame]
= Writing Integrations in Javascript
An integration written in JavaScript looks very similar to a Java one:
[source,js]
.hello.js
----
const Processor = Java.extend(Java.type("org.apache.camel.Processor"));
function proc(e) {
e.getIn().setBody('Hello Camel K!')
}
from('timer:tick')
.process(new Processor(proc))
.to('log:info')
----
To run it, you need just to execute:
```
kamel run hello.js
```
For JavaScript integrations, Camel K does not yet provide an enhanced DSL but you can access to some global bounded objects such as a writable registry and the camel context so to set the property _exchangeFormatter_ of the _LogComponent_ as done in previous example, you can do something like:
[source,js]
----
l = context.getComponent('log', true, false)
l.exchangeFormatter = function(e) {
return "log - body=" + e.in.body + ", headers=" + e.in.headers
}
----