2016-12-27 4 views
3

Лучшая практика заключается в том, что сообщения, которые обрабатываются актором, должны быть определены в сопутствующем объекте актера. Где они должны быть определены, если сообщения являются общими для руководителя и дочернего актора? Должны ли они определяться в сопутствующем объекте обоих участников? Кроме того, где должны быть классы случаев, если они распределяются между другими участниками?Определение классов классов, когда супервизор и дочерний актор используют одни и те же сообщения

ответ

1

В тех случаях, когда сообщения распределяются между несколькими субъектами я использовать протокол уровня абстракции:

public abstract class ActorProcessingProtocol { 

      private ActorProcessingProtocol() { 
      } 

      public static class ActionStart implements Serializable {} 
      public static class ActionDone implements Serializable {} 
      ... 
} 

Это был вдохновлен некоторыми АККА Scala, например, но применяется в Java.