2012-05-22 11:37:09 +02:00
|
|
|
package docs.camel
|
2012-04-22 17:02:06 +01:00
|
|
|
|
2012-05-02 21:13:52 +01:00
|
|
|
object Introduction {
|
2012-04-24 13:48:13 +02:00
|
|
|
{
|
|
|
|
|
//#Consumer-mina
|
|
|
|
|
import akka.camel.{ CamelMessage, Consumer }
|
|
|
|
|
|
2012-05-02 21:13:52 +01:00
|
|
|
class MinaClient extends Consumer {
|
2012-04-24 13:48:13 +02:00
|
|
|
def endpointUri = "mina:tcp://localhost:6200?textline=true"
|
|
|
|
|
|
|
|
|
|
def receive = {
|
|
|
|
|
case msg: CamelMessage ⇒ { /* ... */ }
|
|
|
|
|
case _ ⇒ { /* ... */ }
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// start and expose actor via tcp
|
|
|
|
|
import akka.actor.{ ActorSystem, Props }
|
|
|
|
|
|
|
|
|
|
val sys = ActorSystem("camel")
|
2012-05-02 21:13:52 +01:00
|
|
|
val mina = sys.actorOf(Props[MinaClient])
|
2012-04-24 13:48:13 +02:00
|
|
|
//#Consumer-mina
|
2012-04-22 17:02:06 +01:00
|
|
|
}
|
2012-04-24 13:48:13 +02:00
|
|
|
{
|
|
|
|
|
//#Consumer
|
|
|
|
|
import akka.camel.{ CamelMessage, Consumer }
|
|
|
|
|
|
2012-05-02 21:13:52 +01:00
|
|
|
class JettyAdapter extends Consumer {
|
2012-04-24 13:48:13 +02:00
|
|
|
def endpointUri = "jetty:http://localhost:8877/example"
|
|
|
|
|
|
|
|
|
|
def receive = {
|
|
|
|
|
case msg: CamelMessage ⇒ { /* ... */ }
|
|
|
|
|
case _ ⇒ { /* ... */ }
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//#Consumer
|
2012-04-22 17:02:06 +01:00
|
|
|
}
|
2012-04-24 13:48:13 +02:00
|
|
|
{
|
|
|
|
|
//#Producer
|
|
|
|
|
import akka.actor.Actor
|
|
|
|
|
import akka.camel.{ Producer, Oneway }
|
2012-05-02 21:13:52 +01:00
|
|
|
import akka.actor.{ ActorSystem, Props }
|
2012-04-24 13:48:13 +02:00
|
|
|
|
2012-05-02 21:13:52 +01:00
|
|
|
class Orders extends Actor with Producer with Oneway {
|
|
|
|
|
def endpointUri = "jms:queue:Orders"
|
2012-04-24 13:48:13 +02:00
|
|
|
}
|
2012-05-02 21:13:52 +01:00
|
|
|
|
|
|
|
|
val sys = ActorSystem("camel")
|
|
|
|
|
val orders = sys.actorOf(Props[Orders])
|
|
|
|
|
|
|
|
|
|
orders ! <order amount="100" currency="PLN" itemId="12345"/>
|
2012-04-24 13:48:13 +02:00
|
|
|
//#Producer
|
|
|
|
|
}
|
|
|
|
|
}
|