我正在创建多个扩展 Actor 的特征。然后我想创建一个使用这些特征的演员类。但是,我不确定如何在 Actor 类的接收方法中组合来自所有特征的接收方法。
性状:
trait ServerLocatorTrait extends Actor {
def receive() = {
case "s" => println("I'm server ")
}
}
trait ServiceRegistrationTrait extends Actor {
def receive() = {
case "r" => println("I'm registration ")
}
}
演员:
class FinalActor extends Actor with ServiceRegistrationTrait with ServerLocatorTrait {
override def receive = {
super.receive orElse ??? <--- what to put here
}
}
现在,如果我发送"r"
并且它只进入"s"
-这是添加的最后一个特征。所以现在它的工作方式是它认为 super 是添加的最后一个特征,所以在这种情况下FinalActor
ServerLocatorTrait
ServerLocatorTrait
问题:
如何结合所有特征的接收方法FinalActor
?
PS - 我看过演员的react
例子:http ://www.kotancode.com/2011/07/19/traits-multiple-inheritance-and-actors-in-scala/
但这不是我需要的