On Tue, Jul 7, 2009 at 3:37 PM, Jon Anstey<jans...@gmail.com> wrote:
> So yeah, rendering languages that we input as a String (i.e. XPath, EL,
> etc.) is easy since we have the language text available. The toString
> operations on PredicateBuilders on the other hand don't return exactly what
> was used to create them. Like you mentioned, header("foo").isEqualTo("bar")
> returns header(foo) == bar, which is not very helpful to you.
>
> So, you could provide a patch to the toString methods for the
> PredicateBuilders so that they return something like
> header("foo").isEqualTo("bar") instead of header(foo) == bar. Though this is
> not as nice looking for the tracing feature IMO. What do others think of
> this change?

Maybe a new method is needed that can output it more DSL like.

The toString as they are are nice as they are more standard math like
and easy to understand.


>
> On Tue, Jul 7, 2009 at 8:52 AM, alloyer <allo...@gmail.com> wrote:
>
>>
>> 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.
>>
>>
>
>
> --
> Cheers,
> Jon
>
> http://janstey.blogspot.com/
>



-- 
Claus Ibsen
Apache Camel Committer

Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus

Reply via email to