camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Claus Ibsen (JIRA)" <j...@apache.org>
Subject [jira] Commented: (CAMEL-3515) Add documentation for the new type option on bean component
Date Sun, 09 Jan 2011 11:31:49 GMT

    [ https://issues.apache.org/jira/browse/CAMEL-3515?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12979300#action_12979300
] 

Claus Ibsen commented on CAMEL-3515:
------------------------------------

If we wanted to go even further we could maybe have a syntax where you specify the type in
the method name.
Which would be intuitive:

{{method=foo(String)}}

And maybe in the future if it would make sense, we can specify multiple types
{{method=foo(String,String,Boolean)}}

And btw you can use shorthand notation for common types from {{java.lang}}, such as String,
byte, byte[], int, boolean etc.
Its only custom types which you need the FQN

{{method=foo(com.foo.MyOrder)}}


> Add documentation for the new type option on bean component
> -----------------------------------------------------------
>
>                 Key: CAMEL-3515
>                 URL: https://issues.apache.org/jira/browse/CAMEL-3515
>             Project: Camel
>          Issue Type: Sub-task
>          Components: camel-core
>            Reporter: Claus Ibsen
>            Assignee: Christian Müller
>            Priority: Minor
>             Fix For: 2.6.0
>
>
> We need this new feature documented
> http://camel.apache.org/bean
> And we need this option on the these
> - MethodCallExpression
> - BeanExpression
> And we need unit tests which uses the method call expression in
> - camel-core
> - camel-spring
> Also the String -> Class converter should use the ClassResolver API from CamelContext.
This ensure it runs in OSGi, JBoss, J2EE etc.
> What you do is just add Exchange as the 2nd parameter and Camel provides it to you
> {code}
>     /**
>      * Returns the converted value, or null if the value is null
>      */
>     @SuppressWarnings("rawtypes")
>     @Converter
>     public static Class toClass(Object value, Exchange exchange) {
>         if (value instanceof Class) {
>             return (Class) value;
>         } else if (value instanceof String) {
>             // prefer to use class resolver API
>             if (exchange != null) {
>                 return exchange.getContext().getClassResolver().resolveClass((String)
value);
>             } else {
>                 return ObjectHelper.loadClass((String) value);
>             }
>         } else {
>             return null;
>         }
>     }
> {code}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message