Example #1
0
 private static Task DispatchAsync <TDomainEvent>(
     IDomainEventDispatcher dispatcher,
     TDomainEvent domainEvent)
     where TDomainEvent : IDomainEvent
 {
     return(dispatcher.DispatchEventAsync(domainEvent));
 }
Example #2
0
        private Task InternalRaise <TDomainEvent>(TDomainEvent domainEvent) where TDomainEvent : IDomainEvent
        {
            var result = Task.CompletedTask;

            if (_options.DispatchInBackground)
            {
                _jobManager.Enqueue(new DomainEventDispatcherJobModel {
                    DomainEvent = domainEvent
                });
            }
            else
            {
                result = _domainEventDispatcher.DispatchEventAsync(domainEvent);
            }
            return(result);
        }