番石榴EventBus:没有注释订阅?

Hol*_*osa 4 java events guava

我需要在域模型中实现pub/sub系统.我正在考虑使用Guava的EventBus,但我想使用接口和适配器来保持我的域模型不知道这样的实现细节.不幸的是,EventBus使用注释进行订阅会给这个想法带来麻烦.

有没有办法在不使用@Subscribe注释的情况下订阅处理程序?看看文档,似乎没有,但也许有一些我没有看到的东西.

谢谢!

Lou*_*man 7

番石榴团队成员在这里.

这是非常谨慎的,您只能使用@Subscribe注释订阅处理程序- EventBus旨在替换接口,适配器等,而不是补充它们 - 但为什么您说这暴露了更多的实现细节?根据我们的经验,它通常会暴露更少的细节.

  • 我不同意,您可以利用 Java 8 的 lambdas 并拥有更清晰的代码。我写了一个小型事件总线,你可以在这里找到:https://github.com/jamming/dojo/tree/master/museum/src/main/java/co/popapp/bus 我仍然需要将它更新到 Java 8 (2认同)