yeah, I am now using the toString() method to render the route on some xxxDefinitions, but I am still not sure whether the renderer can deal with a sufficient complicated expression through this method. I am a little worried about the renderer's handling with some incidental interminable DSL.
willem.jiang wrote: > > Hi, > > xxxDefinition classes has the toString() method, which is useful for > tracing the message. > > I don't know if it can help your Groovy rendering. > > Willem > > alloyer wrote: >> 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-tp22220288p24371507.html Sent from the Camel Development mailing list archive at Nabble.com.