Hi

Just an update on the status.

I discovered an issue in the scala DSL, which I managed to fix
yesterday. The problem was the scala DSL would cause all languages to
be evaluated as Expression, and then converted to Predicate if
applicable. This was wrong, as the DSL indicate whether it should be a
Predicate or Expression. This level of indirection would cause an
issue as first being an Expression and then a Predicate. And also
cause a slight difference between Scala DSL and Java DSL etc.

The problem was identified due the improved Simple language prototype
as it parse the input depending on its a Expression or Predicate. The
latter has all the operators and whatnot. Where as the former is the
"template style" which was the origin roots of the Simple language - A
very simple expression language for dynamic templates, eg to say
"Hello ${body} how are you?".

The old simple language did support a style by which you could be lazy
and omit the ${ } tokens, and just indicate "body" or "header.foo".
The new simple language prefers to use "${body}" and "${header.foo}"
as its consistent and also stands out to the user, that this is a
function, and not plain text. However the old style is supported using
a "SimpleBackwardsCompatibleParser" which have been marked as
@deprecated, and to be removed in Camel 3.0.

I have been running with the simple prototype for a week on my laptop,
and have identified some minor mistakes in the Camel source code due
the old simple language. I have corrected them.

So it would be a matter of time before the prototype is ready as a
donation to Apache and to be included in Camel 2.9.

the prototype is located here
https://github.com/davsclaus/camel-simple2


-- 
Claus Ibsen
-----------------
FuseSource
Email: cib...@fusesource.com
Web: http://fusesource.com
Twitter: davsclaus, fusenews
Blog: http://davsclaus.blogspot.com/
Author of Camel in Action: http://www.manning.com/ibsen/

Reply via email to