私はActorを拡張する複数の形質を作り出しています。次に、これらの特性のいくつかを使用するアクタークラスを作成したいと思います。しかし、私はどのようにActorクラスのreceiveメソッド内のすべての特性から受信メソッドを組み合わせるか分からない。アクターに複数の形質を積み重ねる
トレイト:
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
}
}
は今、私はFinalActor
に"r"
と"s"
を送信する場合にのみServerLocatorTrait
に行く - 最後の形質が追加されます。 だから、これが今の仕組みは、この場合にそうServerLocatorTrait
質問、それはスーパー最後の形質が追加考慮することである:
はどのように私はFinalActor
内のすべての特性からメソッドを受け取る兼ね備えていますか?
PS - 私はreact
例で役者を見てきました:http://www.kotancode.com/2011/07/19/traits-multiple-inheritance-and-actors-in-scala/ をそれはそれはにスーパーのスーパーを呼び出す伴うだろうので、私は、あなたが受け取る方法を組み合わせることができるかどうかわからないんだけど、私は
[アッカの俳優とScalaのスタッカブル形質パターン]の可能な重複を/ question/18124643/scala-stackable-trait-pattern-with-akka-actors) – cmbaxter
@cmbaxterそれはそれがどのように重複しているのかわかりません。多分OPは私が解決策として選んだものを使うことができるかもしれませんが。 – Adrian