Scala DSL - Getting Started
===========================

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:

[source,java]
----------------------------------------------------------
class MyRouteBuilder extends RouteBuilder {
  "direct:a" --> "mock:a"
  "direct:b" to "mock:b"
}
----------------------------------------------------------

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.


If you compare this to the Java DSL, you notice:

* there is no configure() method to override
* a route starts directly with a URI instead of `from(uri)`
* `→` is just an alias for `to`

[[ScalaDSL-GettingStarted-SettingtherouteID]]
Setting the route ID
--------------------

To assign the unique ID to the Scala route, insert the `routeId` method
invocation after the "from" part of the DSL.

[source,java]
-----------------------------------------
 "direct:a" routeId "route-b" to "mock:b"
-----------------------------------------

[[ScalaDSL-GettingStarted-CreatinganewCamelScalaproject]]
Creating a new Camel Scala project
----------------------------------

Camel offers Maven archetypes that
allow you to quickly setup a new project.

To do this, you can execute the following Maven goal from the command
line (using Maven 3.0.3 or better):

[source,java]
----------------------
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:

[source,java]
---------------------
mvn compile exec:java
---------------------
