public UnitOfWorkDelegatingHandler(IMicroMediator mediator, ILogger <UnitOfWorkDelegatingHandler> logger, IServiceProvider provider) { _mediator = mediator; _logger = logger; _provider = provider; }
public static async Task PublishEventsAsync(this IMicroMediator mediator, IAggregateRoot root) { foreach (var e in root.Events) { await mediator.SendAsync(e); } }
public static async Task ApplyEvents(this IAggregateRoot root, IMicroMediator mediator) { var events = root.Events.ToList(); root.ClearEvents(); foreach (var e in events.AsParallel()) { await mediator.PublishEventAsync(e); } }
public Task PublishToDomainAsync(IMicroMediator mediator, ILogger logger, CancellationToken cancellationToken) { return(Task.Factory.StartNew(async() => { try { // var sw = Stopwatch.StartNew(); await mediator.PublishAsync(GetMessage()); // sw.Stop(); // SetMediatorProcess(sw.Elapsed.TotalMilliseconds); } catch (Exception e) { logger.LogError($"Consumed a message : {_topic} failed", e); } finally { await Task.CompletedTask; } }, cancellationToken)); }
public EventDispatcherHandler(IMicroMediator mediator) { _mediator = mediator; }
public UnitOfWorkDelegatingHandler(IUnitOfWork unitOfWork, IMicroMediator mediator) { _unitOfWork = unitOfWork; _mediator = mediator; }
public static async Task PublishEventAsync(this IMicroMediator mediator, IDomainEvent @event) { await mediator.SendAsync(@event); }