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.

  • Java

  • XML

  • YAML

from("jms:queue:foo")
    .bean(MyBean.class);
<route>
    <from uri="jms:queue:foo"/>
    <bean beanType="com.foo.MyBean"/>
</route>
- from:
    uri: jms:queue:foo
    steps:
      - bean:
          beanType: com.foo.MyBean