在事件聚合器模式中,发布者将事件发布到聚合器,订阅者通过聚合器订阅特定事件。
假设有 3 个订阅者SubscriberA
,SubscriberB
和SubscriberC
。他们都想订阅一个名为OnPowerUpEvent
. OnPowerUpEvent
可以由或PowerItemA
触发PowerItemB
。和也可以有多个实例。PowerItemA
PowerItemB
基于这种情况,我不明白事件聚合器模式如何能够允许订阅者订阅特定发布者发布的事件。在我看来,订阅者通常只能订阅事件OnPowerUpEvent
,并且无论发布者是谁都可以响应事件。
例如,SubscriberA
可能想要订阅任何实例OnPowerUpEvent
发布的事件。可能想要订阅由 的特定实例发布的事件。并且可能希望订阅该事件,而不管发布者是谁。 PowerItemA
SubscriberB
OnPowerUpEvent
PowerItemB
SubscriberC
OnPowerUpEvent
在这 3 种不同的情况下,事件聚合器模式如何管理呢?