Events 在Google';s事件总线

Events 在Google';s事件总线,events,guava,Events,Guava,我有一个监听方法,它在Dummy类中等待FooBarEvent: @Subscribe public void testingEvents(FooBarEvent event) { } 另一方面,我有一个类需要该方法: public class TestEvents{ public TestEvents(event){ FooBarEvent event = new FooBarEvent (...); event.post(event); }

我有一个监听方法,它在
Dummy
类中等待
FooBarEvent

@Subscribe
public void testingEvents(FooBarEvent event) {

}
另一方面,我有一个类需要该方法:

public class TestEvents{
    public TestEvents(event){
        FooBarEvent event = new FooBarEvent (...);
        event.post(event);
    }
}
这是从主类调用的,其行为如下:

EventBus bus = new EventBus();
bus.register(new Dummy());
问题是:如何在
testingEvents
(订阅者)获得发布事件的类

(因此,我希望该方法的调用者是
TestEvents
类)


谢谢。

在我看到的大多数代码中,事件本身都有一个
字段,指示事件的起源。您可以只向
FooBarEvent
添加一个包含源对象(或仅包含源类,如果您需要的话)的字段吗?

在我看到的大多数代码中,事件本身都有一个
字段,指示事件的起源。你能不能在
FooBarEvent
中添加一个包含源对象的字段(或者只包含源对象的类,如果你需要的话)?

你的答案显然是正确的。但是,我想知道
EventBus
是否有一个现成的机制来获取事件的源代码。(事实上,您可能如何实现这样一个功能?)(您可以使用反射来访问它,但这将是丑陋和缓慢的:)您的答案显然是正确的。但是,我想知道
EventBus
是否有一种开箱即用的机制,可以获取事件的源代码。(实际上,您可能如何实现这样一个功能?)(您可以使用反射来访问它,但这样做既丑陋又缓慢:)