Example #1
0
 /// <summary>
 /// Initializes a new instance of <see cref="EventHandler"/>.
 /// </summary>
 /// <param name="implicitFilter">Whether filtering is implicit.</param>
 /// <param name="streamProcessors">The <see cref="IStreamProcessors" />.</param>
 /// <param name="filterStreamProcessors">The <see cref="IFilterStreamProcessors"/>.</param>
 /// <param name="filterValidationForAllTenants">The <see cref="IValidateFilterForAllTenants" /> for validating the filter definition.</param>
 /// <param name="streamDefinitions">The<see cref="IStreamDefinitions" />.</param>
 /// <param name="arguments">Connecting arguments.</param>
 /// <param name="filterProcessorForTenant"></param>
 /// <param name="eventProcessorForTenant">The event processor.</param>
 /// <param name="acceptRegistration">Accepts the event handler registration.</param>
 /// <param name="rejectRegistration">Rejects the event handler registration.</param>
 /// <param name="logger">Logger for logging.</param>
 /// <param name="executionContext">The execution context for the event handler.</param>
 /// <param name="cancellationToken">Cancellation token that can cancel the hierarchy.</param>
 public FastEventHandler(
     bool implicitFilter,
     IStreamProcessors streamProcessors,
     IFilterStreamProcessors filterStreamProcessors,
     IValidateFilterForAllTenants filterValidationForAllTenants,
     IStreamDefinitions streamDefinitions,
     EventHandlerRegistrationArguments arguments,
     Func <TenantId, IFilterProcessor <TypeFilterWithEventSourcePartitionDefinition> > filterProcessorForTenant,
     Func <TenantId, IEventProcessor> eventProcessorForTenant,
     Func <CancellationToken, Task> acceptRegistration,
     Func <Failure, CancellationToken, Task> rejectRegistration,
     ILogger logger,
     ExecutionContext executionContext,
     CancellationToken cancellationToken)
 {
     _implicitFilter           = implicitFilter;
     _logger                   = logger;
     _streamProcessors         = streamProcessors;
     _filterStreamProcessors   = filterStreamProcessors;
     _filterValidator          = filterValidationForAllTenants;
     _streamDefinitions        = streamDefinitions;
     _arguments                = arguments;
     _filterProcessorForTenant = filterProcessorForTenant;
     _executionContext         = executionContext;
     _eventProcessorForTenant  = eventProcessorForTenant;
     _acceptRegistration       = acceptRegistration;
     _rejectRegistration       = rejectRegistration;
     _cancellationTokenSource  = CancellationTokenSource.CreateLinkedTokenSource(cancellationToken);
 }
Example #2
0
 /// <summary>
 /// Initializes a new instance of the <see cref="EventHandlerFactory"/> class.
 /// </summary>
 /// <param name="streamProcessors">The <see cref="IStreamProcessors"/>.</param>
 /// <param name="filterValidator">The <see cref="IValidateFilterForAllTenants"/>.</param>
 /// <param name="getEventsToStreamsWriter">The <see cref="Func{TResult}"/> for getting a tenant scoped <see cref="IWriteEventsToStreams"/>.</param>
 /// <param name="streamDefinitions">The <see cref="IStreamDefinitions"/>.</param>
 /// <param name="loggerFactory">The <see cref="ILoggerFactory"/>.</param>
 /// <param name="filterStreamProcessors">The <see cref="IFilterStreamProcessors"/>.</param>
 public EventHandlerFactory(
     IStreamProcessors streamProcessors,
     IValidateFilterForAllTenants filterValidator,
     Func <TenantId, IWriteEventsToStreams> getEventsToStreamsWriter,
     IStreamDefinitions streamDefinitions,
     ILoggerFactory loggerFactory,
     IFilterStreamProcessors filterStreamProcessors)
 {
     _streamProcessors         = streamProcessors;
     _filterValidator          = filterValidator;
     _getEventsToStreamsWriter = getEventsToStreamsWriter;
     _streamDefinitions        = streamDefinitions;
     _loggerFactory            = loggerFactory;
     _filterStreamProcessors   = filterStreamProcessors;
 }