DevEX - reference for building teams, processes, and platforms
Apache Camel EIP Agenda
1.
2. Agenda
• What is Apache Camel ?
• What is EIP ?
• EIP with Apache Camel
• Example
• Demo
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21. • CamelContext object represents the Camel runtime system.
• Registry:Holds all the bean necessary for routings.
• Exchange: contains message related headers properties.
• TypeConverter:Type conversion utility for converting types.
• Component is a factory for creating Endpoint instances.
• Endpoints implemented with many different communication
technologies.
• JMS queue
• Web service
• File
• FTP server
• Email Address
Camel Architecture
26. • Camel supports the
message translator
using the processor,
bean or transform
nodes.
27. Message Filter EIP
• Camel has support for Message Filter using
the filter node
from("jms:queue:inbox")
.filter(header("test").isNotEqualTo("true"))
.to("jms:queue:order");
28. Recipient List
• How to route messages based on a static or
dynamic list of destinations
• Camel has support for Message Filter using the
filter node
from("jms:queue:inbox")
.multicast().to("file://backup",“seda:inbox");
from("seda:confirmMails").beanRef(processMails)
.recipientList(“destinations")
30. Splitter EIP
• Camel has support for Splitter using the split
node
from("file://inbox")
.split(body().tokenize("n"))
.to("seda:orderLines");
31. Aggregator EIP
• Camel has support for Aggregator using the
aggregator node
from("jms:topic:stock:quote")
.aggregate()
.xpath("/quote/@symbol")
.batchTimeout(5 * 60 *1000)
.to(“seda:quotes");
32. Resequencer EIP
• Camel has support for Resequencer using the
resequence node
from("jms:topic:stock:quote")
.resequence().xpath("/quote/@symbol")
.timeout(60 * 1000)
.to(“seda:quotes");