Ste*_*fan 4 events gwt event-bus
早上,
我正在使用SimpleEvent总线将数据从我的集中数据恢复器发送到Widgets.这工作得非常好,我从服务器获得一组新数据,RPC调用的成功方法将它放在Eventbus上,每个小部件查看数据是否适用于它,如果是,则"显示"它,如果没有,它什么都不做.每个请求只有一个数据集,小部件不依赖于已发送的其他数据.
现在我有一个Tree小部件.创建树的子节点也会抛出此数据集,并且此子节点将自身注册到Eventbus以恢复其子节点的数据.数据应在急速接收时(出于性能原因),因此我将获得多个数据集,这些数据集在"同一时间"(在for循环中)放在Eventbus上.我只控制它们放在那里的顺序(首先是根,然后是第一个孩子的数据......).Eventbus现在如何进行活动?
目前的解决方案:
您更喜欢哪种解决方案?为什么?
此致,斯特凡
PS:我最喜欢的答案是1.是Eventbus的标准行为^^ PPS:解决方案也应该在介绍Webworkers时工作.
这EventBus#fireEvent是同步的.这是设计的.您可以将事件传递给总线,让处理程序可以修改它,当执行返回到您的方法时,您可以检查事件; 这用于PlaceChangeRequestEvent及其setMessage例如.
仅供参考,如果处理程序抛出异常,则不会阻止执行其他处理程序.的fireEvent意愿,然后包裹异常(复数;多个处理程序可以抛出)在UmbrellaException.