When we do an enrich, the *resourceUri ( in my example *.enrich("direct:ds", new AggregationStrategyRessource())) is called every time.
When I parse a file, big query with all the datasource while be called every, is there a trick to tell the route to execute only one ? I have watch camel cache but I have understand that it is used for something else. Thanks ! 2013/3/6 Jean Francois LE BESCONT <jflebesc...@gmail.com> > Thanks Claus for the link ( have you an HashMap off the FAQ in the head ? > :) > > Don't forget to add : > > > original.getOut().setHeaders(original.getIn().getHeaders()); > > > When enrich with strategy ! > > > 2013/3/6 Claus Ibsen <claus.ib...@gmail.com> > >> On Wed, Mar 6, 2013 at 10:26 AM, Jean Francois LE BESCONT >> <jflebesc...@gmail.com> wrote: >> > My mistake ...I used resource.getOut().getBody(); instead >> > od resource.getIn().getBody(); >> > >> >> Yeah see this FAQ >> http://camel.apache.org/using-getin-or-getout-methods-on-exchange.html >> >> > >> > public Exchange aggregate(Exchange original, Exchange resource) { >> > >> > AED originalBody = (AED)original.getIn().getBody(); >> > Object resourceResponse = (Object) resource.getIn().getBody(); >> > >> > LOG.info("originalBody " + originalBody ) ; >> > LOG.info("resourceResponse " + resourceResponse ) ; >> > // do stuff with >> > >> > return resource; >> > } >> > >> > Thanks raul for the help ! :) >> > >> > >> > 2013/3/6 Jean Francois LE BESCONT <jflebesc...@gmail.com> >> > >> >> Thanks Raul ! >> >> >> >> I haven't found simple example enrich here ( >> >> http://camel.apache.org/content-enricher.html, direct:resource in >> never >> >> explains ). Perharps that I haven't understand fondamental but it's a >> >> huge framework and learning needs time :) >> >> >> >> So I have a querie : >> >> >> >> from("direct:refreshReferentielDynamic") >> >> .setBody(constant("SELECT * FROM TEST")) >> >> .to("jdbc:dataSource") >> >> .to("direct:ds") >> >> .end(); >> >> >> >> Plus : >> >> >> >> from("direct:ds").to("log:dans.directds").end(); >> >> >> >> Otherwise it doesn't works. >> >> >> >> >> >> And an " main route " : >> >> >> >> from("file://....") >> >> .split() >> >> .tokenize("\n") >> >> .enrich("direct:ds", new AggregationStrategyRessource()) >> >> >> >> With : >> >> >> >> >> >> public class AggregationStrategyRessource implements >> AggregationStrategy { >> >> >> >> >> >> public Exchange aggregate(Exchange original, Exchange resource) { >> >> >> >> return resource; // for the moment >> >> } >> >> >> >> } >> >> >> >> But original is always null ... >> >> >> >> Do you see with ? >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> 2013/3/6 Jean Francois LE BESCONT <jflebesc...@gmail.com> >> >> >> >>> Hey ! >> >>> >> >>> A picture is sometime better than explication :) I try to make a >> really >> >>> simple test ( equivalent of MAP with lookup in ETL) : >> >>> >> >>> >> >>> ------------------------- >> >>> | TABLE TEST | >> >>> ------------------------- >> >>> | COL1 | COL2 | >> >>> | jack | 2 | >> >>> | bob | 3 | >> >>> ------------------------ >> >>> | >> >>> | >> >>> | >> >>> | >> >>> | >> >>> ---------------- ---------------------- >> >>> ------------------------ >> >>> | FILE INPUT | | ENRICH ? | >> >>> | FILE OUTPUT | >> >>> ---------------- ---------------------- >> >>> ----------------------- >> >>> | jack | cool | >>>>>>>>> | | >>>>>>>>> | >> jack >> >>> | cool | 2 | >> >>> | bob | foo | | | >> >>> | bob | foo | 3 | >> >>> ---------------- ----------------------- >> >>> ------------------------ >> >>> >> >>> >> >>> >> >>> >> >>> >> >>> >> >>> >> >>> 2013/3/6 Jean Francois LE BESCONT <jflebesc...@gmail.com> >> >>> >> >>>> If i do: >> >>>> public class AggregationStrategyRessource implements >> AggregationStrategy >> >>>> { >> >>>> >> >>>> @Override >> >>>> public Exchange aggregate(Exchange original, Exchange resource) { >> >>>> int i = 1 / 0; >> >>>> return original; >> >>>> } >> >>>> } >> >>>> >> >>>> no exception are thows. >> >>>> >> >>>> >> >>>> >> >>>> 2013/3/6 Jean Francois LE BESCONT <jflebesc...@gmail.com> >> >>>> >> >>>>> thks Raul >> >>>>> >> >>>>> For the moment it's a simple : >> >>>>> >> >>>>> public class AggregationStrategyRessource implements >> >>>>> AggregationStrategy { >> >>>>> >> >>>>> @Override >> >>>>> public Exchange aggregate(Exchange original, Exchange resource) >> { >> >>>>> return original; >> >>>>> } >> >>>>> >> >>>>> } >> >>>>> >> >>>>> If I put a debug point on it, it is never fired .... >> >>>>> >> >>>>> >> >>>>> >> >>>>> >> >>>>> >> >>>>> 2013/3/6 Raúl Kripalani <r...@evosent.com> >> >>>>> >> >>>>>> Can we see the code of AggregationStrategyRessource? >> >>>>>> >> >>>>>> Regards, >> >>>>>> Raúl. >> >>>>>> >> >>>>>> On Mar 5, 2013, at 23:30, Jean Francois LE BESCONT wrote: >> >>>>>> >> >>>>>> > Hey, >> >>>>>> > >> >>>>>> > I have this > >> >>>>>> > >> >>>>>> >> http://camel.465427.n5.nabble.com/Enrich-message-with-data-from-dynamic-sql-query-td5329427.html >> >>>>>> > >> >>>>>> > But I haven't found a solution to my question. >> >>>>>> > >> >>>>>> > How can enrich my stream with data from a queries ? >> >>>>>> > >> >>>>>> > I have a a route called from the start : >> >>>>>> > >> >>>>>> > from("direct:refreshReferentielDynamic") >> >>>>>> > // >> >>>>>> > .setBody(constant("SELECT * FROM TEST")) >> >>>>>> > // >> >>>>>> > .to("jdbc:dataSource") >> >>>>>> > // >> >>>>>> > .to("direct:ds") >> >>>>>> > // >> >>>>>> > .end(); >> >>>>>> > >> >>>>>> > >> >>>>>> > End I would like to acces data in memory in direct:ds from an >> other >> >>>>>> route. >> >>>>>> > I have try this : >> >>>>>> > >> >>>>>> > from("foo"). >> >>>>>> > [...] >> >>>>>> > .enrich("direct:ds", new AggregationStrategyRessource()) >> >>>>>> > >> >>>>>> > But code in AggregationStrategyRessource is not called ... and >> body >> >>>>>> is >> >>>>>> > replace by the content of the query. >> >>>>>> > >> >>>>>> > Thks ! >> >>>>>> > >> >>>>>> > Thks ! >> >>>>>> >> >>>>>> >> >>>>> >> >>>> >> >>> >> >> >> >> >> >> -- >> Claus Ibsen >> ----------------- >> Red Hat, Inc. >> FuseSource is now part of Red Hat >> Email: cib...@redhat.com >> Web: http://fusesource.com >> Twitter: davsclaus >> Blog: http://davsclaus.com >> Author of Camel in Action: http://www.manning.com/ibsen >> > >