Пример #1
0
        Task InnerInvoke(IncomingContext context, int currentIndex = 0)
        {
            if (currentIndex == executingElements.Count)
            {
                return Task.CompletedTask;
            }

            ILinkElement step = executingElements[currentIndex];

            return step.Invoke(context, () => InnerInvoke(context, currentIndex + 1));
        }
Пример #2
0
 public Task Invoke(IncomingContext context, Func <Task> next)
 {
     countdown.Signal();
     return(next());
 }
Пример #3
0
 public Task Invoke(IncomingContext context, Func <Task> next)
 {
     context.Message.Id.Output();
     return(next());
 }
Пример #4
0
            public async Task Invoke(IncomingContext context, Func <Task> next)
            {
                await Task.Delay(1000).ConfigureAwait(false);

                await next().ConfigureAwait(false);
            }
Пример #5
0
 public Task Invoke(IncomingContext context)
 {
     return(InnerInvoke(context));
 }
Пример #6
0
 public Task Invoke(IncomingContext context, Func<Task> next)
 {
     countdown.Signal();
     return next();
 }
Пример #7
0
 public Task Invoke(IncomingContext context, Func<Task> next)
 {
     context.Message.Id.Output();
     return next();
 }
Пример #8
0
 public async Task Invoke(IncomingContext context, Func<Task> next)
 {
     await Task.Delay(1000).ConfigureAwait(false);
     await next().ConfigureAwait(false);
 }
Пример #9
0
 static Task Connector(ChainFactory factory, TransportMessage message)
 {
     var pipeline = factory.Create();
     var context = new IncomingContext(message);
     return pipeline.Invoke(context);
 }
Пример #10
0
 public Task Invoke(IncomingContext context)
 {
     return InnerInvoke(context);
 }