Лучшие практики для именования актеров-актеров (в объекте-компаньоне) - PullRequest
0 голосов
/ 21 марта 2019

У меня есть несколько актёров-акка, определённых так:

object SomethingActor {
  val name: String = "somethingActor"
  def props: Props = Props(new SomethingActor())
}

class somethingActor extends Actor {
  verride def receive: Receive = ???
}

// somewhere else
final val myActor = actorSystem.actorOf(SomethingActor.props, SomethingActor.name)

Из этих актёров только один момент «жив» в любой момент моего приложения, например, новый SomethingActor Актер может быть создан только в том случае, если старый SomethingActor мертв.

Теперь я не думаю, что определение имени актера выглядит так: val name: String = "somethingActor" очень приятно, поэтому мне интересно, смогу ли яиспользуйте что-то вроде этого:

object SomethingActor {
  val name: String = this.getClass.getName
  def props: Props = Props(new SomethingActor())
}

Будет ли это считаться плохой практикой?Есть ли лучший способ справиться с этим?Мне (кажется, мне) нужно сохранить имя в объекте-компаньоне, чтобы иметь возможность искать актера из другой точки моей программы, используя ActorSystem.actorSelection(path: String) ( document ).

...