Apache Camel is a rule-based routing and mediation engine that offers multiple DSLs (Domain Specific Language) in regular programming languages such as Java, Scala, Groovy, and it also allows routing rules to be specified in XML. Camel offers higher-level abstractions that allow you to interact with various systems using the same API regardless of the protocol or data type the systems are using. Camel allows you to define your own routing rules, decide from which sources to accept messages, and determine how to process and send those messages to other destinations
Camel is heavily used in open source integration space due to the following features.
• Implementation of Enterprise integration patterns (EIPs)( http://camel.apache.org/enterprise-integration-patterns.html)
• Support for multiple Domain-specific languages (DSL http://camel.apache.org/dsl.html)
• Extensive component library ( http://camel.apache.org/components.html)
• Payload-agnostic router
• Modular and pluggable architecture
• POJO model
• Easy configuration
• Automatic type converters
• Lightweight core API.
• Test kit
• Vibrant community
Camel session will cover
1. Routing With Camel
2. Understanding endpoints
3. Enterprise integration patterns in Camel
4. Understanding components
5. Creating routes
6. Routing and EIP
7. Transforming data with Camel
8. Error Handling in Came
9. Testing With Camel