Я прочитал некоторые статьи в блоге о реализации шаблона Observer на JEE6 и что-то меня беспокоит ... Я не могу найти какую-либо информацию atm, поэтому я прошу там .. .Как JEE6 делает связь между Observer и Observee (шаблон наблюдателя)
Я нашел следующие exemples:
@Stateless
[...]
public class ParisJugService {
@Inject
Event event;
public void helloParis(){
System.out.println("Hello Paris");
event.fire("hello Paris invoked!");
}
}
@Stateless
public class EventReceiver {
public void onHelloParis(@Observes String message){
System.out.println("----------- " + message);
}
}
и
public class MyEvent {
String data;
Date eventTime;
....
}
public class EventProducer {
@Inject @Any Event<MyEvent> event;
public void doSomething() {
MyEvent e=new MyEvent();
e.data="This is a test event";
e.eventTime=new Date();
event.fire(e);
}
}
public class EventConsumer {
public void afterMyEvent(@Observes MyEvent event) {
// .. Insert event logic here
}
}
Я не могу понять, как связь между потребителем и производителем событий событий делается ...
Это соглашение об именах методов? (Где слова «on», «after», «before» ... будут иметь смысл)
Это сопоставление данных аргументов (здесь String и MyEvent)?
Я не могу знать и не видеть, что еще это может быть ...
не это CDI? – Bozho