public Task CommitTransactionAsync(long transactionId, string stream) { Ensure.NotNullOrEmpty(stream, "stream"); var source = new TaskCompletionSource <object>(); var operation = new CommitTransactionOperation(source, Guid.NewGuid(), transactionId, stream); EnqueueOperation(operation); return(source.Task); }
async Task <WriteResult> IEventStoreTransactionConnection.CommitTransactionAsync(EventStoreTransaction transaction, UserCredentials userCredentials) { Ensure.NotNull(transaction, "transaction"); var source = new TaskCompletionSource <WriteResult>(TaskCreationOptions.RunContinuationsAsynchronously); var operation = new CommitTransactionOperation(Settings.Log, source, Settings.RequireMaster, transaction.TransactionId, userCredentials); await EnqueueOperation(operation).ConfigureAwait(false); return(await source.Task.ConfigureAwait(false)); }