Red Hat Training

A Red Hat training course is available for Red Hat Fuse

9.2. Event Driven Consumer

Overview

The event-driven consumer pattern, shown in Figure 9.1, “Event Driven Consumer Pattern”, is a pattern for implementing the consumer endpoint in a Apache Camel component, and is only relevant to programmers who need to develop a custom component in Apache Camel. Existing components already have a consumer implementation pattern hard-wired into them.

Figure 9.1. Event Driven Consumer Pattern

Event driven consumer pattern
Consumers that conform to this pattern provide an event method that is automatically called by the messaging channel or transport layer whenever an incoming message is received. One of the characteristics of the event-driven consumer pattern is that the consumer endpoint itself does not provide any threads to process the incoming messages. Instead, the underlying transport or messaging channel implicitly provides a processor thread when it invokes the exposed event method (which blocks for the duration of the message processing).
For more details about this implementation pattern, see Section 44.1.3, “Consumer Patterns and Threading” and Chapter 47, Consumer Interface.