public static bool Publish(IEntity entity, EntityPersistentEventType eventType) { var _event = new EntityEventArgs(entity, eventType); var subject = new EntityPersistentSubject(entity.EntityType, eventType, _event); SynchronizedSubscribeManager.Instance.Publish(subject); return(!_event.Cancel); }
public async Task <bool> PublishAsync(IServiceProvider serviceProvider, IEntity entity, PersistentEventType eventType) { Guard.ArgumentNull(entity, nameof(entity)); var _event = new EntityEventArgs(entity, eventType); var subject = new PersistentSubject(entity.EntityType, eventType, _event); await subMgr.PublishAsync(subject); await AcceptForServiceProviderAsync(serviceProvider, subject); return(!_event.Cancel); }
public bool Publish(IServiceProvider serviceProvider, IEntity entity, PersistentEventType eventType) { Guard.ArgumentNull(entity, nameof(entity)); var _event = new EntityEventArgs(entity, eventType); var subject = new PersistentSubject(entity.EntityType, eventType, _event); subMgr.Publish(subject); AcceptForServiceProvider(serviceProvider, subject); return(!_event.Cancel); }