A FUSE Mediation Router route is essentially a pipeline of processors, of
org.apache.camel.Processor type. Messages are encapsulated in an exchange
object, E, which gets passed from node to node by invoking the
process() method. The architecture of the processor pipeline is illustrated
in Figure 4.2.
At the start of the route, you have the source endpoint, which is represented by an
org.apache.camel.Consumer object. The source endpoint is responsible for
accepting incoming request messages and dispatching replies. When constructing the route,
FUSE Mediation Router creates the appropriate Consumer type based on the component prefix
from the endpoint URI, as described in Factory Patterns for a Component.
Each intermediate node in the pipeline is represented by a processor object
(implementing the org.apache.camel.Processor interface). You can insert
either standard processors (for example, filter, throttler, or
delayer) or insert your own custom processor
implementations.
At the end of the route is the target endpoint, which is represented by an
org.apache.camel.Producer object. Because it comes at the end of a
processor pipeline, the producer is also a processor object (implementing the
org.apache.camel.Processor interface). The target endpoint is responsible
for sending outgoing request messages and receiving incoming replies. When constructing
the route, FUSE Mediation Router creates the appropriate Producer type based on the
component prefix from the endpoint URI.