public FactoryBasedAggregateRootRepository(IEventStore eventStore, IDomainEventSerializer domainEventSerializer, IDomainTypeNameMapper domainTypeNameMapper, Func<Type, AggregateRoot> aggregateRootFactoryMethod) : base(eventStore, domainEventSerializer, domainTypeNameMapper) { if (aggregateRootFactoryMethod == null) throw new ArgumentNullException("aggregateRootFactoryMethod"); _aggregateRootFactoryMethod = aggregateRootFactoryMethod; }
public SynchronousViewManagerEventDispatcher( IAggregateRootRepository aggregateRootRepository, IDomainEventSerializer domainEventSerializer, IDomainTypeNameMapper domainTypeNameMapper, params IViewManager[] viewManagers) { this.viewManagers = viewManagers.ToList(); _aggregateRootRepository = aggregateRootRepository; _domainEventSerializer = domainEventSerializer; _domainTypeNameMapper = domainTypeNameMapper; }
/// <summary> /// Constructs the event dispatcher /// </summary> public DependentViewManagerEventDispatcher(IEnumerable <IViewManager> dependencies, IEnumerable <IViewManager> viewManagers, IEventStore eventStore, IDomainEventSerializer domainEventSerializer, IAggregateRootRepository aggregateRootRepository, IDomainTypeNameMapper domainTypeNameMapper, Dictionary <string, object> viewContextItems) { _dependencies = dependencies.ToList(); _viewManagers = viewManagers.ToList(); _eventStore = eventStore; _domainEventSerializer = domainEventSerializer; _aggregateRootRepository = aggregateRootRepository; _domainTypeNameMapper = domainTypeNameMapper; _viewContextItems = viewContextItems; _workerThread = new Thread(DoWork) { IsBackground = true }; _automaticCatchUpTimer.Elapsed += (o, ea) => _work.Enqueue(new Work()); _automaticCatchUpTimer.Interval = 1000; _maxDomainEventsPerBatch = 100; }
public ViewManagerEventDispatcher(IAggregateRootRepository aggregateRootRepository, IEventStore eventStore, IDomainEventSerializer domainEventSerializer, IDomainTypeNameMapper domainTypeNameMapper, params IViewManager[] viewManagers) { if (aggregateRootRepository == null) { throw new ArgumentNullException("aggregateRootRepository"); } if (eventStore == null) { throw new ArgumentNullException("eventStore"); } if (domainEventSerializer == null) { throw new ArgumentNullException("domainEventSerializer"); } if (domainTypeNameMapper == null) { throw new ArgumentNullException("domainTypeNameMapper"); } if (viewManagers == null) { throw new ArgumentNullException("viewManagers"); } _aggregateRootRepository = aggregateRootRepository; _eventStore = eventStore; _domainEventSerializer = domainEventSerializer; _domainTypeNameMapper = domainTypeNameMapper; viewManagers.ToList().ForEach(view => _viewManagers.Enqueue(view)); _worker = new Thread(DoWork) { IsBackground = true }; _automaticCatchUpTimer.Elapsed += delegate { _work.Enqueue(PieceOfWork.FullCatchUp(false)); }; AutomaticCatchUpInterval = TimeSpan.FromSeconds(1); }
public CommandProcessor( IEventStore eventStore, IAggregateRootRepository aggregateRootRepository, IEventDispatcher eventDispatcher, IDomainEventSerializer domainEventSerializer, ICommandMapper commandMapper, IDomainTypeNameMapper domainTypeNameMapper, Options options) { if (eventStore == null) { throw new ArgumentNullException("eventStore"); } if (aggregateRootRepository == null) { throw new ArgumentNullException("aggregateRootRepository"); } if (eventDispatcher == null) { throw new ArgumentNullException("eventDispatcher"); } if (domainEventSerializer == null) { throw new ArgumentNullException("domainEventSerializer"); } if (commandMapper == null) { throw new ArgumentNullException("commandMapper"); } if (domainTypeNameMapper == null) { throw new ArgumentNullException("domainTypeNameMapper"); } if (options == null) { throw new ArgumentNullException("options"); } _eventStore = eventStore; _aggregateRootRepository = aggregateRootRepository; _eventDispatcher = eventDispatcher; _domainEventSerializer = domainEventSerializer; _commandMapper = commandMapper; _domainTypeNameMapper = domainTypeNameMapper; _options = options; }
public CommandProcessor( IEventStore eventStore, IAggregateRootRepository aggregateRootRepository, IEventDispatcher eventDispatcher, IDomainEventSerializer domainEventSerializer, ICommandMapper commandMapper, IDomainTypeNameMapper domainTypeNameMapper, Options options) { if (eventStore == null) throw new ArgumentNullException("eventStore"); if (aggregateRootRepository == null) throw new ArgumentNullException("aggregateRootRepository"); if (eventDispatcher == null) throw new ArgumentNullException("eventDispatcher"); if (domainEventSerializer == null) throw new ArgumentNullException("domainEventSerializer"); if (commandMapper == null) throw new ArgumentNullException("commandMapper"); if (domainTypeNameMapper == null) throw new ArgumentNullException("domainTypeNameMapper"); if (options == null) throw new ArgumentNullException("options"); _eventStore = eventStore; _aggregateRootRepository = aggregateRootRepository; _eventDispatcher = eventDispatcher; _domainEventSerializer = domainEventSerializer; _commandMapper = commandMapper; _domainTypeNameMapper = domainTypeNameMapper; _options = options; }
public CommandTypeNameCommandProcessorDecorator(ICommandProcessor innerCommandProcessor, IDomainTypeNameMapper domainTypeNameMapper) { _innerCommandProcessor = innerCommandProcessor; _domainTypeNameMapper = domainTypeNameMapper; }
public DefaultAggregateRootRepository(IEventStore eventStore, IDomainEventSerializer domainEventSerializer, IDomainTypeNameMapper domainTypeNameMapper) { _eventStore = eventStore; _domainEventSerializer = domainEventSerializer; _domainTypeNameMapper = domainTypeNameMapper; }
public RealUnitOfWork(IAggregateRootRepository aggregateRootRepository, IDomainTypeNameMapper typeNameMapper) { _aggregateRootRepository = aggregateRootRepository; _typeNameMapper = typeNameMapper; }
internal TestContext(InMemoryEventStore eventStore, IAggregateRootRepository aggregateRootRepository, IEventDispatcher eventDispatcher, IDomainEventSerializer domainEventSerializer, ICommandMapper commandMapper, IDomainTypeNameMapper domainTypeNameMapper) { _eventStore = eventStore; _aggregateRootRepository = aggregateRootRepository; _eventDispatcher = eventDispatcher; _domainEventSerializer = domainEventSerializer; _testCommandMapper = commandMapper; _domainTypeNameMapper = domainTypeNameMapper; _viewManagerEventDispatcher = eventDispatcher as ViewManagerEventDispatcher; if (_viewManagerEventDispatcher != null) { _waitHandle.Register(_viewManagerEventDispatcher); } }
internal TestContext(InMemoryEventStore eventStore, IAggregateRootRepository aggregateRootRepository, IEventDispatcher eventDispatcher, IDomainEventSerializer domainEventSerializer, ICommandMapper commandMapper, IDomainTypeNameMapper domainTypeNameMapper) { _eventStore = eventStore; _aggregateRootRepository = aggregateRootRepository; _eventDispatcher = eventDispatcher; _domainEventSerializer = domainEventSerializer; _testCommandMapper = commandMapper; _domainTypeNameMapper = domainTypeNameMapper; }
public FactoryBasedAggregateRootRepository(IEventStore eventStore, IDomainEventSerializer domainEventSerializer, IDomainTypeNameMapper domainTypeNameMapper, Func <Type, AggregateRoot> aggregateRootFactoryMethod) : base(eventStore, domainEventSerializer, domainTypeNameMapper) { if (aggregateRootFactoryMethod == null) { throw new ArgumentNullException("aggregateRootFactoryMethod"); } this._aggregateRootFactoryMethod = aggregateRootFactoryMethod; }
internal TestUnitOfWork(IAggregateRootRepository aggregateRootRepository, IEventStore eventStore, IEventDispatcher eventDispatcher, IDomainEventSerializer domainEventSerializer, IDomainTypeNameMapper domainTypeNameMapper) { _eventStore = eventStore; _eventDispatcher = eventDispatcher; _domainEventSerializer = domainEventSerializer; _realUnitOfWork = new RealUnitOfWork(aggregateRootRepository, domainTypeNameMapper); }
/// <summary> /// Registers the given type name mapper to be used instead of the default <see cref="DefaultDomainTypeNameMapper"/> /// </summary> public void UseCustomDomainTypeNameMapper(IDomainTypeNameMapper domainTypeNameMapper) { RegisterInstance(domainTypeNameMapper); }
public DefaultViewContext(IAggregateRootRepository aggregateRootRepository, IDomainTypeNameMapper domainTypeNameMapper) { _aggregateRootRepository = aggregateRootRepository; _realUnitOfWork = new RealUnitOfWork(_aggregateRootRepository, domainTypeNameMapper); }
public InMemoryViewEventDispatcher(IAggregateRootRepository aggregateRootRepository, IDomainEventSerializer domainEventSerializer, IDomainTypeNameMapper domainTypeNameMapper) { _aggregateRootRepository = aggregateRootRepository; _domainEventSerializer = domainEventSerializer; _domainTypeNameMapper = domainTypeNameMapper; }
public InMemoryUnitOfWork(IAggregateRootRepository aggregateRootRepository, IDomainTypeNameMapper domainTypeNameMapper) : base(aggregateRootRepository, domainTypeNameMapper) { }