Chapter 2. Implementing a Processor
Abstract
Apache Camel allows you to implement a custom processor. You can then insert the custom processor into a route to perform operations on exchange objects as they pass through the route.
2.1. Processing Model
Pipelining model
The pipelining model describes the way in which processors are arranged in section "Pipes and Filters" in "Implementing Enterprise Integration Patterns". Pipelining is the most common way to process a sequence of endpoints (a producer endpoint is just a special type of processor). When the processors are arranged in this way, the exchange's In and Out messages are processed as shown in Figure 2.1, “Pipelining Model”.
Figure 2.1. Pipelining Model
The processors in the pipeline look like services, where the In message is analogous to a request, and the Out message is analogous to a reply. In fact, in a realistic pipeline, the nodes in the pipeline are often implemented by Web service endpoints, such as the CXF component.
For example, Example 2.1, “Java DSL Pipeline” shows a Java DSL pipeline constructed from a sequence of two processors,
ProcessorA
, ProcessorB
, and a producer endpoint, TargetURI.
Example 2.1. Java DSL Pipeline
from(SourceURI).pipeline(ProcessorA, ProcessorB, TargetURI);