Just like the Java DSL, the Scala DSL has a RouteBuilder class (org.apache.camel.scala.dsl.builder.RouteBuilder
) that you can extend to implement your own routes. This example shows two very simple routes:
Info |
---|
From Camel 2.15 onwards use org.apache.camel.scala.dsl.builder.ScalaRouteBuilder and pass in the CamelContext in the constructor, which will be used by the builder. The old class RouteBuilder is deprecated. |
Wiki Markup |
---|
{snippet:id=basic|lang=java|url=camel/trunk/components/camel-scala/src/test/scala/org/apache/camel/scala/dsl/BasicRouteBuilderTest.scala} |
...
To assign the unique ID to the Scala route, insert the routeId
method invocation after the "from" part of the DSL.
Code Block |
---|
"direct:a" routeId "route-b" to "mock:b"
|
...
To do this, you can execute the following Maven goal from the command line (using Maven 3.0.3 or better):
Code Block |
---|
mvn archetype:generate
|
This runs Maven interactively - just type camel
and press <Enter> to filter for Camel-related archetypes.
From the list, pick the number for camel-archetype-scala
, then fill in the remaining details (such as the Camel version, et cetera).
The generated project has a "readme" file with more instructions, and is ready to compile and run from Maven using:
Code Block |
---|
mvn compile exec:java
|