Chapter 41. 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.
41.1. Processing Model
Pipelining model
The pipelining model describes the way in which processors are arranged in Section 4.4, “Pipes and Filters”. 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 41.1, “Pipelining Model”.
Figure 41.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 41.1, “Java DSL Pipeline” shows a Java DSL pipeline constructed from a sequence of two processors,
ProcessorA
, ProcessorB
, and a producer endpoint, TargetURI.
Example 41.1. Java DSL Pipeline
from(SourceURI).pipeline(ProcessorA, ProcessorB, TargetURI);