public DefaultUncommittedEventExecutor(
     IProcessingCommandCache processingCommandCache,
     ICommandAsyncResultManager commandAsyncResultManager,
     IAggregateRootTypeProvider aggregateRootTypeProvider,
     IAggregateRootFactory aggregateRootFactory,
     IMemoryCache memoryCache,
     IRepository repository,
     IRetryCommandService retryCommandService,
     IEventStore eventStore,
     IEventPublisher eventPublisher,
     IRetryService retryService,
     IEventPersistenceSynchronizerProvider eventPersistenceSynchronizerProvider,
     ICommandContext commandContext,
     ILoggerFactory loggerFactory)
 {
     _processingCommandCache    = processingCommandCache;
     _commandAsyncResultManager = commandAsyncResultManager;
     _aggregateRootTypeProvider = aggregateRootTypeProvider;
     _aggregateRootFactory      = aggregateRootFactory;
     _memoryCache         = memoryCache;
     _repository          = repository;
     _retryCommandService = retryCommandService;
     _eventStore          = eventStore;
     _eventPublisher      = eventPublisher;
     _retryService        = retryService;
     _eventPersistenceSynchronizerProvider = eventPersistenceSynchronizerProvider;
     _logger = loggerFactory.Create(GetType().Name);
 }
Пример #2
0
        public DefaultCommandExecutor(
            IProcessingCommandCache processingCommandCache,
            ICommandAsyncResultManager commandAsyncResultManager,
            ICommandHandlerProvider commandHandlerProvider,
            IAggregateRootTypeProvider aggregateRootTypeProvider,
            IMemoryCache memoryCache,
            IRepository repository,
            IRetryCommandService retryCommandService,
            IEventStore eventStore,
            IEventPublisher eventPublisher,
            IEventPersistenceSynchronizerProvider eventPersistenceSynchronizerProvider,
            ICommandContext commandContext,
            ILoggerFactory loggerFactory)
        {
            _processingCommandCache = processingCommandCache;
            _commandAsyncResultManager = commandAsyncResultManager;
            _commandHandlerProvider = commandHandlerProvider;
            _aggregateRootTypeProvider = aggregateRootTypeProvider;
            _memoryCache = memoryCache;
            _repository = repository;
            _retryCommandService = retryCommandService;
            _eventStore = eventStore;
            _eventPublisher = eventPublisher;
            _eventPersistenceSynchronizerProvider = eventPersistenceSynchronizerProvider;
            _commandContext = commandContext;
            _trackingContext = commandContext as ITrackingContext;
            _logger = loggerFactory.Create(GetType().Name);

            if (_trackingContext == null)
            {
                throw new Exception("command context must also implement ITrackingContext interface.");
            }
        }