SlideShare ist ein Scribd-Unternehmen logo
1 von 20
What does Camel stand for?
Concise
Application
Messaging
Exchange
Language
About Me
 12 years in Software Industry
 Build software in Project Management, CAD/CAM, Banking, Education,
Ecommerce
 C++,C #.Net, Java, Scala, Akka, Spring, Node.JS, Vert.x, RDBMS, MongoDB
 www.Marutsingh.com
What is Apache Camel
 Quote from the web site
 http://camel.apache.org
Apache Camel is a
powerful Open Source
Integration Framework
based on known
Enterprise Integration Patterns
What is Apache Camel
 Why do we need integration?
 Your apps are build using different tech stacks
 Critical for your business to integrate
 Why Integration Framework?
 Framework do the heavy lifting
 Focus on business problem
 Not "reinventing the wheel"
What is Apache Camel
 What is Enterprise Integration Patterns?
What is Apache Camel
 Use Case
ActiveMQ REST Api
What is Apache Camel
 What is Enterprise Integration Patterns?
EIP
 Filter Pattern
from
A
send to
B
filter
message
Camel’s architecture
Filter Route
Endpoint A =
endpoint("activemq:queue:quote");
Endpoint B = endpoint("mq:quote");
Predicate isWidget =
xpath("/quote/product = ‘widget’");
from(A).filter(isWidget).to(B);
Filter Route
import org.apache.camel.builder.RouteBuilder;
public class FilterRoute extends RouteBuilder {
public void configure() throws Exception {
Endpoint A = endpoint("activemq:queue:order");
Endpoint B = endpoint("mq:inventory");
Predicate isWidget = xpath("/quote/product = ‘widget’");
from(A).filter(isWidget).to(B);
}
}
Content Based Router
Content Based Route – Java DSL
from("activemq:orders")
.choice()
.when() .jsonpath(“$..order[?@.type==’cod’)]”)
.to("activemq:codOrders")
.otherwise()
.to("activemq:prepaidOrders");
Camel Components
 Summary
 Integration framework
 > 180 components out of the box
 Enterprise Integration Patterns (EIP)
 Routing and mediation
 Domain Specific Language (DSL)
 Endpoints as URIs
 Predicate and Expressions
 Very extensible and configurable
 No heavy specification
 No container dependency
 Payload agnostic
 Connectivity to a great wealth of transports
 Apache licensed
Code Example
 Goals
1) Pickup files from a directory
2) Make sure we only pickup 3 files per 30 seconds
3) Store into JMS queue
4) Listen on JMS queue
5) And upload file to FTP server
Goals using Enterprise Integration Patterns
from throttle to from to

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Mulesoft ppt
Mulesoft pptMulesoft ppt
Mulesoft ppt
 
An introduction to Microservices
An introduction to MicroservicesAn introduction to Microservices
An introduction to Microservices
 
Custom policies in mule 4 and a circuit breaker example
Custom policies in mule 4 and a circuit breaker exampleCustom policies in mule 4 and a circuit breaker example
Custom policies in mule 4 and a circuit breaker example
 
Introduction to microservices
Introduction to microservicesIntroduction to microservices
Introduction to microservices
 
Reactive Microservices with Quarkus
Reactive Microservices with QuarkusReactive Microservices with Quarkus
Reactive Microservices with Quarkus
 
API design-first and Microservices
API design-first and MicroservicesAPI design-first and Microservices
API design-first and Microservices
 
Microservices Interview Questions and Answers | Microservices Architecture Tr...
Microservices Interview Questions and Answers | Microservices Architecture Tr...Microservices Interview Questions and Answers | Microservices Architecture Tr...
Microservices Interview Questions and Answers | Microservices Architecture Tr...
 
Microservices
MicroservicesMicroservices
Microservices
 
AWS Large Scale Migrations - Jan 2016
AWS Large Scale Migrations - Jan 2016AWS Large Scale Migrations - Jan 2016
AWS Large Scale Migrations - Jan 2016
 
Mule Runtime: Performance Tuning
Mule Runtime: Performance Tuning Mule Runtime: Performance Tuning
Mule Runtime: Performance Tuning
 
고객 경험을 통한 AWS 클라우드 이전을 위한 지름길 - 김효정 (AWS 솔루션즈 아키텍트)
고객 경험을 통한 AWS 클라우드 이전을 위한 지름길 - 김효정 (AWS 솔루션즈 아키텍트)고객 경험을 통한 AWS 클라우드 이전을 위한 지름길 - 김효정 (AWS 솔루션즈 아키텍트)
고객 경험을 통한 AWS 클라우드 이전을 위한 지름길 - 김효정 (AWS 솔루션즈 아키텍트)
 
New relic
New relicNew relic
New relic
 
API-first design - Basis for an consistent API-Management approach
API-first design - Basis for an consistent API-Management approachAPI-first design - Basis for an consistent API-Management approach
API-first design - Basis for an consistent API-Management approach
 
Creating an Operating Model to enable a high frequency organization
Creating an Operating Model to enable a high frequency organizationCreating an Operating Model to enable a high frequency organization
Creating an Operating Model to enable a high frequency organization
 
gRPC on .NET Core - NDC Sydney 2019
gRPC on .NET Core - NDC Sydney 2019gRPC on .NET Core - NDC Sydney 2019
gRPC on .NET Core - NDC Sydney 2019
 
(DVO306) AWS CodeDeploy: Automating Your Software Deployments
(DVO306) AWS CodeDeploy: Automating Your Software Deployments(DVO306) AWS CodeDeploy: Automating Your Software Deployments
(DVO306) AWS CodeDeploy: Automating Your Software Deployments
 
AWS Well-Architected Framework: Operational Excellence Pillar
AWS Well-Architected Framework: Operational Excellence PillarAWS Well-Architected Framework: Operational Excellence Pillar
AWS Well-Architected Framework: Operational Excellence Pillar
 
From Monolithic to Microservices
From Monolithic to Microservices From Monolithic to Microservices
From Monolithic to Microservices
 
Micro services Architecture
Micro services ArchitectureMicro services Architecture
Micro services Architecture
 
Red Hat Container Strategy
Red Hat Container StrategyRed Hat Container Strategy
Red Hat Container Strategy
 

Andere mochten auch

Andere mochten auch (20)

Integration with Camel
Integration with CamelIntegration with Camel
Integration with Camel
 
Java8 training - Class 1
Java8 training  - Class 1Java8 training  - Class 1
Java8 training - Class 1
 
Java8 training - class 2
Java8 training - class 2Java8 training - class 2
Java8 training - class 2
 
Java8 training - class 3
Java8 training - class 3Java8 training - class 3
Java8 training - class 3
 
Concurrency with java
Concurrency with javaConcurrency with java
Concurrency with java
 
Building Applications with a Graph Database
Building Applications with a Graph DatabaseBuilding Applications with a Graph Database
Building Applications with a Graph Database
 
Integrating Apache Camel with Apache Syncope
Integrating Apache Camel with Apache SyncopeIntegrating Apache Camel with Apache Syncope
Integrating Apache Camel with Apache Syncope
 
What is concurrency
What is concurrencyWhat is concurrency
What is concurrency
 
Developing Microservices with Apache Camel, by Claus Ibsen
Developing Microservices with Apache Camel, by Claus IbsenDeveloping Microservices with Apache Camel, by Claus Ibsen
Developing Microservices with Apache Camel, by Claus Ibsen
 
Java8
Java8Java8
Java8
 
Jumping-with-java8
Jumping-with-java8Jumping-with-java8
Jumping-with-java8
 
Java Hands-On Workshop
Java Hands-On WorkshopJava Hands-On Workshop
Java Hands-On Workshop
 
Concurrency & Parallel Programming
Concurrency & Parallel ProgrammingConcurrency & Parallel Programming
Concurrency & Parallel Programming
 
Java day2016 "Reinventing design patterns with java 8"
Java day2016 "Reinventing design patterns with java 8"Java day2016 "Reinventing design patterns with java 8"
Java day2016 "Reinventing design patterns with java 8"
 
Why Transcriptome? Why RNA-Seq? ENCODE answers….
Why Transcriptome? Why RNA-Seq?  ENCODE answers….Why Transcriptome? Why RNA-Seq?  ENCODE answers….
Why Transcriptome? Why RNA-Seq? ENCODE answers….
 
Java Concurrency, Memory Model, and Trends
Java Concurrency, Memory Model, and TrendsJava Concurrency, Memory Model, and Trends
Java Concurrency, Memory Model, and Trends
 
Java Multithreading and Concurrency
Java Multithreading and ConcurrencyJava Multithreading and Concurrency
Java Multithreading and Concurrency
 
Camel Desing Patterns Learned Through Blood, Sweat, and Tears
Camel Desing Patterns Learned Through Blood, Sweat, and TearsCamel Desing Patterns Learned Through Blood, Sweat, and Tears
Camel Desing Patterns Learned Through Blood, Sweat, and Tears
 
Concurrency
ConcurrencyConcurrency
Concurrency
 
Simplify your integrations with Apache Camel
Simplify your integrations with Apache CamelSimplify your integrations with Apache Camel
Simplify your integrations with Apache Camel
 

Ähnlich wie Apache camel

Ed Sanford LinkedIn Resume
Ed Sanford LinkedIn ResumeEd Sanford LinkedIn Resume
Ed Sanford LinkedIn Resume
Ed Sanford
 
Realize Value, Reduce Costs And Optimize the Value of Your Microsoft Investme...
Realize Value, Reduce Costs And Optimize the Value of Your Microsoft Investme...Realize Value, Reduce Costs And Optimize the Value of Your Microsoft Investme...
Realize Value, Reduce Costs And Optimize the Value of Your Microsoft Investme...
Amazon Web Services
 
Cost Optimization for Microsoft Workloads on AWS - AWS Transformation Day: Sa...
Cost Optimization for Microsoft Workloads on AWS - AWS Transformation Day: Sa...Cost Optimization for Microsoft Workloads on AWS - AWS Transformation Day: Sa...
Cost Optimization for Microsoft Workloads on AWS - AWS Transformation Day: Sa...
Amazon Web Services
 

Ähnlich wie Apache camel (20)

Ed Sanford LinkedIn Resume
Ed Sanford LinkedIn ResumeEd Sanford LinkedIn Resume
Ed Sanford LinkedIn Resume
 
Inventory management project based on ASP.NET, introduction to C# and ASP.NET
Inventory management project based on ASP.NET, introduction to C# and ASP.NETInventory management project based on ASP.NET, introduction to C# and ASP.NET
Inventory management project based on ASP.NET, introduction to C# and ASP.NET
 
A Multi-Company Perspective: Enterprise Cloud and PaaS
A Multi-Company Perspective: Enterprise Cloud and PaaSA Multi-Company Perspective: Enterprise Cloud and PaaS
A Multi-Company Perspective: Enterprise Cloud and PaaS
 
Mohammed_Murtuza_EAI
Mohammed_Murtuza_EAIMohammed_Murtuza_EAI
Mohammed_Murtuza_EAI
 
Realize Value of Your Microsoft Investments- Transformation Day Philadelphia ...
Realize Value of Your Microsoft Investments- Transformation Day Philadelphia ...Realize Value of Your Microsoft Investments- Transformation Day Philadelphia ...
Realize Value of Your Microsoft Investments- Transformation Day Philadelphia ...
 
Realize Value of Your Microsoft Investments - AWS Transformation Day Boston 2018
Realize Value of Your Microsoft Investments - AWS Transformation Day Boston 2018Realize Value of Your Microsoft Investments - AWS Transformation Day Boston 2018
Realize Value of Your Microsoft Investments - AWS Transformation Day Boston 2018
 
Iterating Towards a Cloud-Enabled IT Organization (ENT204-R2) - AWS re:Invent...
Iterating Towards a Cloud-Enabled IT Organization (ENT204-R2) - AWS re:Invent...Iterating Towards a Cloud-Enabled IT Organization (ENT204-R2) - AWS re:Invent...
Iterating Towards a Cloud-Enabled IT Organization (ENT204-R2) - AWS re:Invent...
 
Realize Value of Your Microsoft Investments - AWS Transformation Days Raleigh...
Realize Value of Your Microsoft Investments - AWS Transformation Days Raleigh...Realize Value of Your Microsoft Investments - AWS Transformation Days Raleigh...
Realize Value of Your Microsoft Investments - AWS Transformation Days Raleigh...
 
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
Enterprise Integration Patterns Revisited (again) for the Era of Big Data, In...
 
Realize Value, Reduce Costs And Optimize the Value of Your Microsoft Investme...
Realize Value, Reduce Costs And Optimize the Value of Your Microsoft Investme...Realize Value, Reduce Costs And Optimize the Value of Your Microsoft Investme...
Realize Value, Reduce Costs And Optimize the Value of Your Microsoft Investme...
 
Node: The Integration Fabric of the Future
Node: The Integration Fabric of the FutureNode: The Integration Fabric of the Future
Node: The Integration Fabric of the Future
 
Openkapow At Mashup Camp 5
Openkapow At Mashup Camp 5Openkapow At Mashup Camp 5
Openkapow At Mashup Camp 5
 
Cost Optimization for Microsoft Workloads on AWS - AWS Transformation Day: Sa...
Cost Optimization for Microsoft Workloads on AWS - AWS Transformation Day: Sa...Cost Optimization for Microsoft Workloads on AWS - AWS Transformation Day: Sa...
Cost Optimization for Microsoft Workloads on AWS - AWS Transformation Day: Sa...
 
[REPEAT 2] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R2) - AW...
[REPEAT 2] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R2) - AW...[REPEAT 2] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R2) - AW...
[REPEAT 2] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R2) - AW...
 
[REPEAT] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R) - AWS r...
[REPEAT] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R) - AWS r...[REPEAT] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R) - AWS r...
[REPEAT] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R) - AWS r...
 
[REPEAT 1] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R1) - AW...
[REPEAT 1] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R1) - AW...[REPEAT 1] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R1) - AW...
[REPEAT 1] Iterating Towards a Cloud-Enabled IT Organization (ENT204-R1) - AW...
 
Shan _Java Architect
Shan _Java ArchitectShan _Java Architect
Shan _Java Architect
 
From AUI to Atlaskit - Streamlining Development for Server & Cloud Apps
From AUI to Atlaskit - Streamlining Development for Server & Cloud AppsFrom AUI to Atlaskit - Streamlining Development for Server & Cloud Apps
From AUI to Atlaskit - Streamlining Development for Server & Cloud Apps
 
Realize Value of Your Microsoft Investments - Transformation Day Montreal 2018
Realize Value of Your Microsoft Investments - Transformation Day Montreal 2018Realize Value of Your Microsoft Investments - Transformation Day Montreal 2018
Realize Value of Your Microsoft Investments - Transformation Day Montreal 2018
 
Achievo ATK - A Business Framework (DPC 2007)
Achievo ATK - A Business Framework (DPC 2007)Achievo ATK - A Business Framework (DPC 2007)
Achievo ATK - A Business Framework (DPC 2007)
 

Kürzlich hochgeladen

%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
masabamasaba
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 

Kürzlich hochgeladen (20)

Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 

Apache camel

  • 1.
  • 2. What does Camel stand for? Concise Application Messaging Exchange Language
  • 3. About Me  12 years in Software Industry  Build software in Project Management, CAD/CAM, Banking, Education, Ecommerce  C++,C #.Net, Java, Scala, Akka, Spring, Node.JS, Vert.x, RDBMS, MongoDB  www.Marutsingh.com
  • 4. What is Apache Camel  Quote from the web site  http://camel.apache.org Apache Camel is a powerful Open Source Integration Framework based on known Enterprise Integration Patterns
  • 5. What is Apache Camel  Why do we need integration?  Your apps are build using different tech stacks  Critical for your business to integrate  Why Integration Framework?  Framework do the heavy lifting  Focus on business problem  Not "reinventing the wheel"
  • 6. What is Apache Camel  What is Enterprise Integration Patterns?
  • 7. What is Apache Camel  Use Case ActiveMQ REST Api
  • 8. What is Apache Camel  What is Enterprise Integration Patterns?
  • 9. EIP
  • 10.  Filter Pattern from A send to B filter message
  • 11.
  • 13. Filter Route Endpoint A = endpoint("activemq:queue:quote"); Endpoint B = endpoint("mq:quote"); Predicate isWidget = xpath("/quote/product = ‘widget’"); from(A).filter(isWidget).to(B);
  • 14. Filter Route import org.apache.camel.builder.RouteBuilder; public class FilterRoute extends RouteBuilder { public void configure() throws Exception { Endpoint A = endpoint("activemq:queue:order"); Endpoint B = endpoint("mq:inventory"); Predicate isWidget = xpath("/quote/product = ‘widget’"); from(A).filter(isWidget).to(B); } }
  • 16. Content Based Route – Java DSL from("activemq:orders") .choice() .when() .jsonpath(“$..order[?@.type==’cod’)]”) .to("activemq:codOrders") .otherwise() .to("activemq:prepaidOrders");
  • 18.  Summary  Integration framework  > 180 components out of the box  Enterprise Integration Patterns (EIP)  Routing and mediation  Domain Specific Language (DSL)  Endpoints as URIs  Predicate and Expressions  Very extensible and configurable  No heavy specification  No container dependency  Payload agnostic  Connectivity to a great wealth of transports  Apache licensed
  • 19. Code Example  Goals 1) Pickup files from a directory 2) Make sure we only pickup 3 files per 30 seconds 3) Store into JMS queue 4) Listen on JMS queue 5) And upload file to FTP server
  • 20. Goals using Enterprise Integration Patterns from throttle to from to