/// <summary>Parameterized constructor. /// </summary> /// <param name="eventHandlerTypeCodeProvider"></param> /// <param name="eventHandlerProvider"></param> /// <param name="eventPublishInfoStore"></param> /// <param name="eventHandleInfoStore"></param> /// <param name="eventHandleInfoCache"></param> /// <param name="actionExecutionService"></param> /// <param name="loggerFactory"></param> public DefaultEventProcessor( IEventHandlerTypeCodeProvider eventHandlerTypeCodeProvider, IEventHandlerProvider eventHandlerProvider, IEventPublishInfoStore eventPublishInfoStore, IEventHandleInfoStore eventHandleInfoStore, IEventHandleInfoCache eventHandleInfoCache, IActionExecutionService actionExecutionService, ILoggerFactory loggerFactory) { _eventHandlerTypeCodeProvider = eventHandlerTypeCodeProvider; _eventHandlerProvider = eventHandlerProvider; _eventPublishInfoStore = eventPublishInfoStore; _eventHandleInfoStore = eventHandleInfoStore; _eventHandleInfoCache = eventHandleInfoCache; _actionExecutionService = actionExecutionService; _logger = loggerFactory.Create(GetType().Name); _queueList = new List<BlockingCollection<EventProcessingContext>>(); for (var index = 0; index < WorkerCount; index++) { _queueList.Add(new BlockingCollection<EventProcessingContext>(new ConcurrentQueue<EventProcessingContext>())); } _workerList = new List<Worker>(); for (var index = 0; index < WorkerCount; index++) { var queue = _queueList[index]; var worker = new Worker(() => { DispatchEventsToHandlers(queue.Take()); }); _workerList.Add(worker); worker.Start(); } }
public EventHandlerModel(EventInformation eventInfo, DocumentCompositeNode compositeNode, CodeDomProvider codeDomProvider, IEventHandlerProvider eventHandlerProvider, AttributeCollection eventAttributes) { this.eventInfo = eventInfo; this.compositeNode = compositeNode; this.eventHandlerProvider = eventHandlerProvider; this.codeDomProvider = codeDomProvider; this.proxyValue = this.MethodName; this.eventAttributes = eventAttributes; }
/// <summary> /// Mediator constructor /// </summary> /// <param name="provider">Event and query handlers provider</param> /// <param name="middlewareProvider">Event and query middlewares provider</param> /// <param name="eventDispatchStrategy">Event dispatching strategy to use</param> public Mediator(IHandlerProvider provider, IMiddlewareProvider middlewareProvider, IEventDispatchStrategy eventDispatchStrategy) { _queryHandlerProvider = provider; _eventHandlerProvider = provider; _eventDispatchStrategy = eventDispatchStrategy; _queryMiddlewareProvider = middlewareProvider; _eventMiddlewareProvider = middlewareProvider; }
public DomainEventDispatcher(IEventHandlerProvider provider) { if (provider == null) { throw new ArgumentNullException("provider"); } _provider = provider; }
public DefaultCommittedEventExecutor( IEventHandlerProvider eventHandlerProvider, IEventPublishInfoStore eventPublishInfoStore, IEventHandleInfoStore eventHandleInfoStore, IRetryService retryService, ILoggerFactory loggerFactory) { _eventHandlerProvider = eventHandlerProvider; _eventPublishInfoStore = eventPublishInfoStore; _eventHandleInfoStore = eventHandleInfoStore; _retryService = retryService; _logger = loggerFactory.Create(GetType().Name); }
public DefaultEventExecutor( IEventHandlerProvider eventHandlerProvider, IEventPublishInfoStore eventPublishInfoStore, IEventHandleInfoStore eventHandleInfoStore, IEventPublisher eventPublisher, ILoggerFactory loggerFactory) { _eventHandlerProvider = eventHandlerProvider; _eventPublishInfoStore = eventPublishInfoStore; _eventHandleInfoStore = eventHandleInfoStore; _eventPublisher = eventPublisher; _logger = loggerFactory.Create(GetType().Name); }
public InMemoryEventConsumer(IEventHandlerProvider eventHandlerProvider) { this.eventHandlerProvider = eventHandlerProvider; }
public InProcessEventPublisher(IEventHandlerProvider eventHandlerProvider) { _eventHandlerProvider = eventHandlerProvider; }
public EventController(IEventHandlerProvider eventHandlerProvider) { _eventHandlerProvider = eventHandlerProvider; }
public void AddProvider(IEventHandlerProvider <TMetaData> provider) { providers.Add(provider); }