public async Task Invoke(IncomingContext context, Func <Task> next) { using (var scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled)) { await Task.Delay(10).ConfigureAwait(false); await next().ConfigureAwait(false); scope.Complete(); } }
Task InnerInvoke(IncomingContext context, int currentIndex = 0) { if (currentIndex == executingElements.Count) { return Task.CompletedTask; } ILinkElement element = executingElements[currentIndex]; return element.Invoke(context, () => InnerInvoke(context, currentIndex + 1)); }
public async Task Invoke(IncomingContext context, Func <Task> next) { try { await next(); } catch (Exception e) { e.StackTrace.Output(); } countdown.Signal(); }
public Task Invoke(IncomingContext context) { return(InnerInvoke(context)); }
public Task Invoke(IncomingContext context) { return InnerInvoke(context); }
public Task Invoke(IncomingContext context, Func<Task> next) { return next(); }
public async Task Invoke(IncomingContext context, Func<Task> next) { await Task.Delay(10).ConfigureAwait(false); throw new InvalidOperationException(nameof(ThrowException)); }
public async Task Invoke(IncomingContext context, Func<Task> next) { await Task.Delay(10).ConfigureAwait(false); await next().ConfigureAwait(false); }
static Task Connector(ChainFactory factory, TransportMessage message) { var pipeline = factory.Create(); var context = new IncomingContext(message); return pipeline.Invoke(context); }
public async Task Invoke(IncomingContext context, Func<Task> next) { try { await next(); } catch (Exception e) { e.StackTrace.Output(); } countdown.Signal(); }
public async Task Invoke(IncomingContext context, Func<Task> next) { using (var scope = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled)) { await Task.Delay(10).ConfigureAwait(false); await next().ConfigureAwait(false); scope.Complete(); } }
public async Task Invoke(IncomingContext context, Func <Task> next) { await Task.Delay(10).ConfigureAwait(false); throw new InvalidOperationException(nameof(ThrowException)); }
public async Task Invoke(IncomingContext context, Func <Task> next) { await Task.Delay(10).ConfigureAwait(false); await next().ConfigureAwait(false); }
public Task Invoke(IncomingContext context, Func <Task> next) { return(next()); }