Hi, I want to try and read (pop) a bulk set of messages from a VM component queue into a list of sorts that I can pass into a bean method, dynamically create some SQL and then call my data source.
Really I want to do two things: 1. In the first route shown below I want to keep the original entity object PatsTofOrderEntity right the way through my different routes and contexts 2. I want to use a timer to periodically get a bulk list of entries from the final queue and then do some transformations and create some dynamic SQL to then save it to data store. This queue should be created/added to in the final camel context shown below and should save the original PATSordereventEntity object rather than the OrderEventDTO. Im using Spring DSL:. <camelContext id="patsOrderEntityPoll" xmlns="http://camel.apache.org/schema/spring"> .... <route id="pollPatsOrderTable" startupOrder="5" shutdownRoute="Defer"> <from uri="jpa:com.macquarie.ficc.futexe.bel.entity.pats.PatsTofOrderEntity?consumer.namedQuery=pollTofOrderRecords&consumeDelete=false&delay=20000&consumer.useFixedDelay=true" /> <convertBodyTo type="com.macquarie.ficc.futexe.bel.entity.pats.PatsTofOrderEntity" /> <to uri="vm:patsTransformationOrder?size=500000&timeout=1000000&concurrentConsumers=50" /> </route> ... </camelContext> <camelContext id="patsOrderTransformerRoute" xmlns="http://camel.apache.org/schema/spring"> ... <route id="transformPatsOrderRoute" startupOrder="3" shutdownRoute="Defer"> <from uri="vm:patsTransformationOrder?size=500000&timeout=1000000&concurrentConsumers=50" /> <to uri="bean:patsTofTransformerBean?method=transformPatsTofOrder" /> <convertBodyTo type="com.macquarie.ficc.futexe.bel.dto.OrderEventDTO" /> <to uri="vm:storeNewEntity?size=1000000&timeout=1000000&concurrentConsumers=100"></to> </route> ... </camelContext> <camelContext id="storeNewOrderEventEntity" xmlns="http://camel.apache.org/schema/spring"> ... <route id="persistNewOrderEvent" startupOrder="1" shutdownRoute="Defer"> <from uri="vm:storeNewEntity?size=1000000&timeout=1000000&concurrentConsumers=100" /> <to uri="bean:saveOrderEventRepository?method=saveNewOrderEvent" /> <add to another queue here - pass in the original entity object some how use a timer/> </route> ... </camelContext> ... <route id="some new route using a timer and taking a bulk set of the original entity objects and passing them to a bean to make a dynamicSQL query> <from uri="timer:xxx"> <read from ? read from the queue in the above route> <to uri"bean to make dynamic SQL and save entity object"> </route> ... </camelContext> Any help would be greatly appreciated. Thanks. -- View this message in context: http://old.nabble.com/Reading-from-a-VM-queue-tp28444281p28444281.html Sent from the Camel - Users mailing list archive at Nabble.com.
