Using Groovy to do a simple Synapse DSL
I've been playing with Groovy and Synapse. If you want to know more - come along to my talk at the Grails Exchange on Friday.
One of the things I've done is to use the StreamingMarkupBuilder to turn the Synapse configuration into a nice {curly bracket} language from its nasty <angle bracket>!
Here is an example:
definitions {
task(class:"MessageInjector", name:"messageInjector1") {
trigger(interval:"5000")
property(name:"message") {
blah { mydata() }
}
property(name:"to",value:"urn:paul")
}
"in" {
log(level:"full")
send()
}
out {
send()
}
}
A simple Groovy script converts this into a synapse.xml. A next step will be to directly build the Synapse mediator tree from this syntax instead. But in the meantime this is a nice hack, and not bad for 16 lines of code!
Paul
One of the things I've done is to use the StreamingMarkupBuilder to turn the Synapse configuration into a nice {curly bracket} language from its nasty <angle bracket>!
Here is an example:
definitions {
task(class:"MessageInjector", name:"messageInjector1") {
trigger(interval:"5000")
property(name:"message") {
blah { mydata() }
}
property(name:"to",value:"urn:paul")
}
"in" {
log(level:"full")
send()
}
out {
send()
}
}
A simple Groovy script converts this into a synapse.xml. A next step will be to directly build the Synapse mediator tree from this syntax instead. But in the meantime this is a nice hack, and not bad for 16 lines of code!
Paul
3 Comments:
Hi Paul,
I saw the video on TSS. Would it be possible to make the slides available ?
Cheers
Guillaume
Yes I've posted the slides here:
http://svn.apache.org/repos/asf/webservices/synapse/trunk/java/src/site/resources/presentations/makingsoagroovyfremantle.pdf
And I'm saying it again here because the last comment wasn't readable!
https://svn.apache.org/repos/asf/webservices/synapse/trunk/java/src/site/resources/presentations/makingsoagroovyfremantle.pdf
Post a Comment
<< Home