public IPipeElement <QueuePipeContext, string, TReturn> StartWithQueueMessage <TReturn>(
            string queueMessage,
            ISyncQueueStepProvider <string, TReturn> provider)
        {
            var context = new QueuePipeContext(_serviceProvider, queueMessage);

            return(new StartElement <QueuePipeContext, string, TReturn>(context, queueMessage, provider));
        }
        public IPipeElement <QueuePipeContext, string, TReturn> StartWithQueueMessage <TReturn, TStepProvider>(
            string queueMessage)
        {
            var context = new QueuePipeContext(_serviceProvider, queueMessage);

            var provider = _serviceProvider.GetRequiredService <TStepProvider>();

            return(StartElement <QueuePipeContext, string, TReturn> .Create(context, queueMessage, provider));
        }
Ejemplo n.º 3
0
            public Task <bool> DoAsync(QueuePipeContext context, QueueMessage?input)
            {
                if (context.ThrownException != null)
                {
                    throw context.ThrownException;
                }

                if (input == null)
                {
                    throw new InvalidOperationException();
                }

                if (input.Message == "Hi")
                {
                    throw new Exception();
                }

                return(Task.FromResult(true));
            }
Ejemplo n.º 4
0
 public Task <QueueMessage> DoAsync(QueuePipeContext context, string input)
 {
     return(Task.FromResult(JsonConvert.DeserializeObject <QueueMessage>(input) ?? throw new FormatException()));
 }