A keyword to receive next message of an Akka actor.
A keyword to receive next message of an Akka actor.
Installation
This ReceiveMessage keyword supports !-notation,
which requires BangNotation and ResetEverywhere compiler plugins along with this receivemessage library.
For sbt, add the following settings to your build.sbt:
The type of message being received,
which must be Any for akka.actor.Actor,
and must be the same type of T for akka.actor.typed.Behavior.
Example:
This ReceiveMessage keyword can be used in the akka.actor.Actor.Receive domain,
to receive the next message.
The above code creates an actor to echo any messages.
import akka.actor._
def echoActor = new Actor {
def receive: Receive = {
while (true) {
val lastMessage = !ReceiveMessage[Any]
sender() ! lastMessage
}
thrownew Exception("Unreachable code!")
}
}
val pinger = system.actorOf(Props(echoActor))
pinger ! "hello world"
expectMsg("hello world")
A keyword to receive next message of an Akka actor.
Installation
This ReceiveMessage keyword supports !-notation, which requires BangNotation and ResetEverywhere compiler plugins along with this
receivemessage
library. For sbt, add the following settings to yourbuild.sbt
:Author:
杨博 (Yang Bo)
The type of message being received, which must be Any for akka.actor.Actor, and must be the same type of
T
for akka.actor.typed.Behavior.This ReceiveMessage keyword can be used in the akka.actor.Actor.Receive domain, to receive the next message. The above code creates an actor to echo any messages.
domains.akka.actor.typed.typedReceiveMessageDsl for usage in the typed actor domains.