Event Driven Consumer

Camel supports the Event Driven Consumer from the EIP patterns.

The default consumer model is event based (i.e. asynchronous) as this means that the Camel container can then manage pooling, threading and concurrency for you in a declarative manner.

The alternative consumer mode is Polling Consumer.
image

The Event Driven Consumer is implemented by consumers implementing the Processor interface which is invoked by the Message Endpoint when a Message is available for processing.

Example

The following demonstrates a Bean being invoked when an event occurs from a JMS queue.

from("jms:queue:foo")
    .bean(MyBean.class);

And in XML:

<route>
    <from uri="jms:queue:foo"/>
    <bean beanType="com.foo.MyBean"/>
</route>