Cafe Example

This example shows how to use Camel to implement a Cafe use case.

First It uses the splitter to dispatch the order, then sends the orders to barista by checking if the coffee is hot or cold. When the coffee is ready, we use a aggregate to gather the drinks for waiter to deliver.

Here is the route builder code for it.

Running

You will need to compile this example first:

  mvn compile

The example should run if you type:

  mvn exec:java 

To stop the server hit ctrl + c

Sample output

When the client is running it outputs all requests and responses on the screen.


Camel thread 4: seda://coldDrinks?concurrentConsumers=2 prepared cold drink #1 for order #2: iced 2 shot ESPRESSO
Camel thread 3: seda://hotDrinks?concurrentConsumers=3 prepared hot drink #1 for order #2: hot 2 shot MOCHA
Camel thread 1: seda://hotDrinks?concurrentConsumers=3 prepared hot drink #2 for order #2: hot 4 shot CAPPUCCINO
Camel thread 2: seda://hotDrinks?concurrentConsumers=3 prepared hot drink #3 for order #2: hot 4 shot LATTE
-----------------------
Order #2
Iced ESPRESSO, 2 shots.
Hot MOCHA, 2 shots.
Hot CAPPUCCINO, 4 shots.
Hot LATTE, 4 shots.
-----------------------

See Also

© 2004-2015 The Apache Software Foundation.
Apache Camel, Camel, Apache, the Apache feather logo, and the Apache Camel project logo are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.
Graphic Design By Hiram