Polling ConsumerCamel supports implementing the Polling Consumer So in your Java code you can do Endpoint endpoint = context.getEndpoint("activemq:my.queue");
PollingConsumer consumer = endpoint.createPollingConsumer();
Exchange exchange = consumer.receive();
There are 3 main polling methods on PollingConsumer
Scheduled Poll ComponentsQuite a few inbound Camel endpoints use a scheduled poll pattern to receive messages and push them through the Camel processing routes. That is to say externally from the client the endpoint appears to use an Event Driven Consumer but internally a scheduled poll is used to monitor some kind of state or resource and then fire message exchanges. Since this a such a common pattern, polling components can extend the ScheduledPollConsumer There is also the Quartz Component which provides scheduled delivery of messages using the Quartz enterprise scheduler. For more details see
Using This PatternIf you would like to use this EIP Pattern then please read the Getting Started, you may also find the Architecture useful particularly the description of Endpoint and URIs. Then you could try out some of the Examples first before trying this pattern out. |