pekko/akka-docs/scala/code/akka/docs/camel/Introduction.scala

54 lines
1.3 KiB
Scala
Raw Normal View History

2012-04-22 17:02:06 +01:00
package akka.docs.camel
2012-05-02 21:13:52 +01:00
object Introduction {
{
//#Consumer-mina
import akka.camel.{ CamelMessage, Consumer }
2012-05-02 21:13:52 +01:00
class MinaClient extends Consumer {
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])
//#Consumer-mina
2012-04-22 17:02:06 +01:00
}
{
//#Consumer
import akka.camel.{ CamelMessage, Consumer }
2012-05-02 21:13:52 +01:00
class JettyAdapter extends Consumer {
def endpointUri = "jetty:http://localhost:8877/example"
def receive = {
case msg: CamelMessage { /* ... */ }
case _ { /* ... */ }
}
}
//#Consumer
2012-04-22 17:02:06 +01: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-05-02 21:13:52 +01:00
class Orders extends Actor with Producer with Oneway {
def endpointUri = "jms:queue:Orders"
}
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"/>
//#Producer
}
}