Пример Akka EventBus для Java

Мне нужен совет, как использовать EventBus, предоставляемый Akka в Java (не Scala!). Я видел документ в http://doc.akka.io/docs/akka/2.0.1/java/event-bus.html

и я пытался сделать это сам, поэтому я получил этот код здесь:

public class Subscriber {

public static void main(String args[]){
    final ActorSystem actorSystem = ActorSystem.create("ServerEvents");
    final ActorRef actor = actorSystem.actorOf(new Props(ServerEventHandler.class));
    actorSystem.eventStream().subscribe(actor,ServerMessage.class);
    actorSystem.eventStream().publish(new ServerMessage());
}
  }


public class ServerEventHandler extends UntypedActor {
  @Override
  public void onReceive(final Object message) {
    System.out.println("Got event in thread: " + Thread.currentThread().getName());
    System.out.println("Event: " + message);
  }
}

вопрос в том, что я знаю, что

actorSystem.eventStream().subscribe(actor,ServerMessage.class);
actorSystem.eventStream().publish(new ServerMessage());

ServerMessage() — это канал и сообщение для sub/pub, но каково точное содержание в Class ServerMessage??

было бы признательно, если бы вы, ребята, могли помочь

Благодарность!


person Arvin    schedule 10.08.2012    source источник
comment
Я не понимаю вопроса. Вы читали документ? doc.akka.io/api/akka/2.0.2 /#akka.event.EventStream   -  person Viktor Klang    schedule 10.08.2012


Ответы (1)


ServerMessage — пример класса событий. По сути, вы можете поместить туда любой экземпляр любого класса (то есть свою собственную реализацию события), если у вас есть актор, который подписан на этот тип события.

person Hiery Nomus    schedule 10.08.2012