groovyRenderer now need a lot of work on string processing and can't deal with some complicated expressions. If the xxxDefinition classes provide a toString() method which presents a DSL-style string, the rendering work will be much easier. If it is determined, I will do this work.
Claus Ibsen-2 wrote: > > > I do wonder if we should by default change the toString() in the > xxxDefinition to be more Java DSL like so its easier to read the > route. > > > On Sat, Jul 4, 2009 at 11:32 AM, Claus Ibsen<claus.ib...@gmail.com> wrote: >> Hi >> >> I loaded the RandomLoadBalanceTest unit test from camel-core and put a >> break point at >> assertMockEndpointsSatisfied(); >> >> And then inspected the CameContext and its getRouteDefinitions(). >> See attached picture from the debugger, shows the object graph and the >> types it has a runtime. >> >> Maybe you need a getLoadBalancer() without a parameter. But try with >> getLoadBalancer(null) in the class LoadBalancerDefinition as it should >> have been created. Notice its the load balancer definition with R that >> can return the specific type. >> >> >> >> On Sat, Jul 4, 2009 at 11:07 AM, alloyer<allo...@gmail.com> wrote: >>> >>> The getLoadBalancerType don't return null but the getAnnotation(). >>> The getLoadBalancerType return a LoadBalancerDefinition instance, which >>> I >>> think should be a >>> RandomLoadBalancerdefinition one. >>> >>> The dsl is: from("direct:start").loadBalance().random().to("mock:x", >>> "mock:y", "mock:z") >>> >>> >>> Claus Ibsen-2 wrote: >>>> >>>> On Sat, Jul 4, 2009 at 8:16 AM, alloyer<allo...@gmail.com> wrote: >>>>> >>>>> Grabbing name from dataFormat type works fine. >>>>> But when I use it on loadBalancer type, it throws a null pointer >>>>> exception. >>>>> >>>>> >>>>> loadBalanceDefinition.getLoadBalancerType().getClass().getAnnotation(XmlRootElement.class) >>>>> throws the exception. >>>>> >>>> >>>> I think its because you use ref to lookup the definition in the >>>> registry. >>>> Then when Camel builds the runtime route it will lookup the real load >>>> balancer and use it. >>>> >>>> So if getLoadBalancerType returns null then try checking getRef and >>>> see if you can lookup this bean in the registry >>>> >>>> >>>> >>>> What does the route DSL looks like? >>>> >>>>> >>>>> JIRA j...@apache.org wrote: >>>>>> >>>>>> >>>>>> [ >>>>>> https://issues.apache.org/activemq/browse/CAMEL-1392?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=52687#action_52687 >>>>>> ] >>>>>> >>>>>> Jonathan Anstey commented on CAMEL-1392: >>>>>> ---------------------------------------- >>>>>> >>>>>> Also, instead of duplicating the dataformat types (and loadbalancer >>>>>> types >>>>>> too), you should be able to grab the short names through the JAXB >>>>>> metadata. Like so >>>>>> >>>>>> {code} >>>>>> dataFormat.getClass().getAnnotation(XmlRootElement.class).name() >>>>>> {code} >>>>>> >>>>>>> groovy renderer >>>>>>> --------------- >>>>>>> >>>>>>> Key: CAMEL-1392 >>>>>>> URL: >>>>>>> https://issues.apache.org/activemq/browse/CAMEL-1392 >>>>>>> Project: Apache Camel >>>>>>> Issue Type: Sub-task >>>>>>> Reporter: James Strachan >>>>>>> Assignee: Xueqiang Mi >>>>>>> Attachments: camel-web-20090629.patch, >>>>>>> camel-web-20090703.patch >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> This message is automatically generated by JIRA. >>>>>> - >>>>>> You can reply to this email to add a comment to the issue online. >>>>>> >>>>>> >>>>>> >>>>> >>>>> -- >>>>> View this message in context: >>>>> http://www.nabble.com/-jira--Created%3A-%28CAMEL-1392%29-groovy-renderer-tp22220288p24331647.html >>>>> Sent from the Camel Development mailing list archive at Nabble.com. >>>>> >>>>> >>>> >>>> >>>> >>>> -- >>>> Claus Ibsen >>>> Apache Camel Committer >>>> >>>> Open Source Integration: http://fusesource.com >>>> Blog: http://davsclaus.blogspot.com/ >>>> Twitter: http://twitter.com/davsclaus >>>> >>>> >>> >>> -- >>> View this message in context: >>> http://www.nabble.com/-jira--Created%3A-%28CAMEL-1392%29-groovy-renderer-tp22220288p24332317.html >>> Sent from the Camel Development mailing list archive at Nabble.com. >>> >>> >> >> >> >> -- >> Claus Ibsen >> Apache Camel Committer >> >> Open Source Integration: http://fusesource.com >> Blog: http://davsclaus.blogspot.com/ >> Twitter: http://twitter.com/davsclaus >> > > > > -- > Claus Ibsen > Apache Camel Committer > > Open Source Integration: http://fusesource.com > Blog: http://davsclaus.blogspot.com/ > Twitter: http://twitter.com/davsclaus > > -- View this message in context: http://www.nabble.com/-jira--Created%3A-%28CAMEL-1392%29-groovy-renderer-tp22220288p24368755.html Sent from the Camel Development mailing list archive at Nabble.com.