public void SetUp() { SetUpEventStore(); _eventApplier = Substitute.For <IEventApplier>(); _commandHandlerFactory = new CommandHandlerFactory(_eventRepository, _eventApplier); _markDrinksServedCommand = GetMarkDrinksServedCommand(); }
protected void Register(IEventApplier <TAggregate, TIdentity> eventApplier) { if (eventApplier == null) { throw new ArgumentNullException(nameof(eventApplier)); } _eventAppliers.Add(eventApplier); }
// push atomic aggregate changes to local history for further processing (EventStore.SaveEvents) private void ApplyChange(LoadedEvent @event, bool isNew) { IEventApplier applier = this; applier.ProcessMessage(@event); if (isNew) { _changes.Add(@event); } }
public CqrsRuntime(ICommandBus commandBus, IEventStore eventStore, IEventApplier eventApplier, IEventPublisher eventPublisher) { Ensure.That(commandBus, "commandBus").IsNotNull(); Ensure.That(eventStore, "eventStore").IsNotNull(); Ensure.That(eventApplier, "eventApplier").IsNotNull(); Ensure.That(eventPublisher, "eventPublisher").IsNotNull(); CommandBus = commandBus; EventStore = eventStore; EventApplier = eventApplier; EventPublisher = eventPublisher; }
public ScritchyBus(Func<Type, object> LoadHandler = null, IEventstoreAdapter adapter = null, bool DoNotApplyEvents = false) { if (LoadHandler == null) LoadHandler = x => Activator.CreateInstance(x); EventStore = new Scritchy.Infrastructure.Implementations.EventStorage.EventStore(adapter: adapter); Registry = new ConventionBasedRegistry(); resolver = new HandlerInstanceResolver(EventStore, Registry, LoadHandler); ParameterResolver = new ParameterResolver(resolver); Bus = new CommandBus(EventStore, Registry, resolver,ParameterResolver); applier = new EventApplier(EventStore, Registry, resolver,ParameterResolver); this.DoNotApplyEvents = DoNotApplyEvents; }
public ScritchyBus(Func <Type, object> LoadHandler = null, IEventstoreAdapter adapter = null, bool DoNotApplyEvents = false) { if (LoadHandler == null) { LoadHandler = x => Activator.CreateInstance(x); } EventStore = new Scritchy.Infrastructure.Implementations.EventStorage.EventStore(adapter: adapter); Registry = new ConventionBasedRegistry(); resolver = new HandlerInstanceResolver(EventStore, Registry, LoadHandler); ParameterResolver = new ParameterResolver(resolver); Bus = new CommandBus(EventStore, Registry, resolver, ParameterResolver); applier = new EventApplier(EventStore, Registry, resolver, ParameterResolver); this.DoNotApplyEvents = DoNotApplyEvents; }
protected void Register(IEventApplier <TAggregate, TIdentity> eventApplier) { _eventAppliers.Add(eventApplier); }
public void ForwardTo(IEventApplier applier) { applier.ProcessMessage(this); }
public CommandHub(IEventApplier EventAppliers) { this.EventAppliers = new IEventApplier[] {this,EventAppliers}; }
public CommandHandlerFactory(IEventRepository eventRepository, IEventApplier eventApplier) { _eventRepository = eventRepository; _eventApplier = eventApplier; }
public DomainRepository(IEventStore eventStore, IEventApplier eventApplier, IEventPublisher eventPublisher) { EventStore = eventStore; EventApplier = eventApplier; EventPublisher = eventPublisher; }