You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Claus Ibsen (Created) (JIRA)" <ji...@apache.org> on 2011/12/08 13:56:39 UTC
[jira] [Created] (CAMEL-4753) Let Method call expression accept a
nested list of expressions for parameter mapping in XML DSLs
Let Method call expression accept a nested list of expressions for parameter mapping in XML DSLs
------------------------------------------------------------------------------------------------
Key: CAMEL-4753
URL: https://issues.apache.org/jira/browse/CAMEL-4753
Project: Camel
Issue Type: New Feature
Components: camel-blueprint, camel-core, camel-spring
Affects Versions: 2.9.0
Reporter: Claus Ibsen
Fix For: 2.10, Future
When using a method call expression, people may want to map parameters. Currently they can use the method name attribute, which supports this in Camel 2.9 onwards. Using a syntax that is similar to java code. See
http://camel.apache.org/bean-binding.html
However Christian S. suggested to also allow to map using a nested list of Expression. So you can do
{code:xml}
<method ref="myBean" method="myMethod">
<xpath>/foo/bar</xpath>
<simple>${header.cool}</simple>
</method>
{code}
That will invoke the myMethod with 2 parameters, and the 1st is the xpath, and the 2nd the simple.
Likewise we could consider improving the <bean> as well, if you want to invoke a bean in a route, eg like a <to>
{code:xml}
<bean ref="myBean" method="myMethod">
<xpath>/foo/bar</xpath>
<simple>${header.cool}</simple>
</bean>
{code}
And for the Java DSL, we may support this as well by using varargs for the list of expressions
{code}
.beanRef("myBean", "myMethod", xpath("/foo/bar"), simple("${header.cool"))
{code}
The trick is to support this as well in the scala DSL.
And to ensure backwards compatibility.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
[jira] [Updated] (CAMEL-4753) Let Method call expression accept a
nested list of expressions for parameter mapping in XML DSLs
Posted by "Claus Ibsen (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CAMEL-4753?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Claus Ibsen updated CAMEL-4753:
-------------------------------
Fix Version/s: (was: 2.10.0)
(was: Future)
3.0.0
Let the DSL API be as current, so moving to 3.0
> Let Method call expression accept a nested list of expressions for parameter mapping in XML DSLs
> ------------------------------------------------------------------------------------------------
>
> Key: CAMEL-4753
> URL: https://issues.apache.org/jira/browse/CAMEL-4753
> Project: Camel
> Issue Type: New Feature
> Components: camel-blueprint, camel-core, camel-spring
> Affects Versions: 2.9.0
> Reporter: Claus Ibsen
> Labels: dsl
> Fix For: 3.0.0
>
>
> When using a method call expression, people may want to map parameters. Currently they can use the method name attribute, which supports this in Camel 2.9 onwards. Using a syntax that is similar to java code. See
> http://camel.apache.org/bean-binding.html
> However Christian S. suggested to also allow to map using a nested list of Expression. So you can do
> {code:xml}
> <method ref="myBean" method="myMethod">
> <xpath>/foo/bar</xpath>
> <simple>${header.cool}</simple>
> </method>
> {code}
> That will invoke the myMethod with 2 parameters, and the 1st is the xpath, and the 2nd the simple.
> Likewise we could consider improving the <bean> as well, if you want to invoke a bean in a route, eg like a <to>
> {code:xml}
> <bean ref="myBean" method="myMethod">
> <xpath>/foo/bar</xpath>
> <simple>${header.cool}</simple>
> </bean>
> {code}
> And for the Java DSL, we may support this as well by using varargs for the list of expressions
> {code}
> .beanRef("myBean", "myMethod", xpath("/foo/bar"), simple("${header.cool"))
> {code}
> The trick is to support this as well in the scala DSL.
> And to ensure backwards compatibility.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira