Example #1
0
 public async Task MiddlewareExecutionAborted(MiddlewareExceptionResponse exception)
 {
     await Task.Run(() =>
     {
         var currentMiddleware = _middlewares[_currentExecutingMidlewareIndex];
         Console.WriteLine($"Pipeline Aborted at {currentMiddleware.Name}. Exception - {exception.Exception.Message}");
     });
 }
Example #2
0
        public override Task Process(MiddlewareRequest request)
        {
            var timer = new Stopwatch();

            timer.Start();

            try
            {
                var items = JsonConvert.DeserializeObject <List <Item> >(request.Request);
                if (items == null)
                {
                    timer.Stop();
                    var exception = new MiddlewareExceptionResponse()
                    {
                        Exception              = new Exception("JSON not formed properly"),
                        CompletedAt            = DateTime.UtcNow,
                        TimeTaken              = timer.Elapsed,
                        ExecutionConfiguration = request.ExecutionConfiguration
                    };
                    return(Abort(exception));
                }

                timer.Stop();
                var response = new MiddlewareResponse()
                {
                    Response               = request.Request,
                    CompletedAt            = DateTime.UtcNow,
                    TimeTaken              = timer.Elapsed,
                    ExecutionConfiguration = request.ExecutionConfiguration
                };
                return(Complete(response));
            }
            catch (Exception error)
            {
                timer.Stop();
                var response = new MiddlewareExceptionResponse()
                {
                    Exception              = error,
                    CompletedAt            = DateTime.UtcNow,
                    TimeTaken              = timer.Elapsed,
                    ExecutionConfiguration = request.ExecutionConfiguration
                };
                return(Abort(response));
            }
        }
        public override Task Process(MiddlewareRequest request)
        {
            var timer = new Stopwatch();

            timer.Start();
            try
            {
                var items = JsonConvert.DeserializeObject <List <Item> >(request.Request);

                foreach (var item in items)
                {
                    Console.WriteLine($"ID: {item.Id}");
                    Console.WriteLine($"Name: {item.Id}");
                    Console.WriteLine($"Description: {item.Id}");
                    Console.WriteLine($"SKU: {item.SKU}");
                    Console.WriteLine($"Cost: {item.Cost}");
                }

                timer.Stop();
                var response = new MiddlewareResponse()
                {
                    Response               = JsonConvert.SerializeObject(items),
                    CompletedAt            = DateTime.UtcNow,
                    TimeTaken              = timer.Elapsed,
                    ExecutionConfiguration = request.ExecutionConfiguration
                };
                return(Complete(response));
            }
            catch (Exception error)
            {
                timer.Stop();
                var response = new MiddlewareExceptionResponse()
                {
                    Exception              = error,
                    CompletedAt            = DateTime.UtcNow,
                    TimeTaken              = timer.Elapsed,
                    ExecutionConfiguration = request.ExecutionConfiguration
                };
                return(Abort(response));
            }
        }
        public override Task Process(MiddlewareRequest request)
        {
            var timer = new Stopwatch();

            timer.Start();

            try
            {
                var items  = JsonConvert.DeserializeObject <List <Item> >(request.Request);
                var prefix = EnvironmentConfiguration["SKU.Prefix"] as string;

                foreach (var item in items)
                {
                    item.SKU = prefix + Guid.NewGuid().ToString().Substring(0, 6);
                }

                timer.Stop();
                var response = new MiddlewareResponse()
                {
                    Response               = JsonConvert.SerializeObject(items),
                    CompletedAt            = DateTime.UtcNow,
                    TimeTaken              = timer.Elapsed,
                    ExecutionConfiguration = request.ExecutionConfiguration
                };
                return(Complete(response));
            }
            catch (Exception error)
            {
                timer.Stop();
                var response = new MiddlewareExceptionResponse()
                {
                    Exception              = error,
                    CompletedAt            = DateTime.UtcNow,
                    TimeTaken              = timer.Elapsed,
                    ExecutionConfiguration = request.ExecutionConfiguration
                };
                return(Abort(response));
            }
        }