Example #1
0
        /// <summary>
        /// Dispatch events of commit
        /// </summary>
        /// <param name="commit">Commit to be dispatched</param>
        private async Task DispatchCommitAsync(CommitData <T> commit)
        {
            var dispatchers = _eventStore.GetDispatchers();

            await Task.WhenAll(dispatchers.Select(x => x.DispatchAsync(BucketName, commit)))
            .ConfigureAwait(false);

            await SetCommitsAsDispatched(commit)
            .ConfigureAwait(false);
        }
Example #2
0
        /// <summary>
        /// Dispatch events of commit
        /// </summary>
        /// <param name="commit">Commit to be dispatched</param>
        private async Task DispatchCommitAsync(CommitData <T> commit)
        {
            var dispatchers = _eventStore.GetDispatchers();

            await Task.WhenAll(dispatchers.Select(x => x.DispatchAsync(BucketName, commit)))
            .ConfigureAwait(false);

            var commitBucketRevision = commit.BucketRevision;
            await Collection.UpdateOneAsync(
                p => p.BucketRevision == commitBucketRevision,
                Builders <CommitData <T> > .Update.Set(p => p.Dispatched, true))
            .ConfigureAwait(false);
        }