Exemple #1
0
        public void StartSubscriberThreads() //need to resolve dependencies...
        {
            //Create a fulfillment when an Order is posted
            StartThread("NewOrder", (channel, msg) =>
            {
                Fulfillment newFulfillment;

                var createOrderRequest = msg.FromJson <Order>();
                var createFulfillment  = new CreateFulfillment
                {
                    OrderId  = createOrderRequest.Id,
                    ItemId   = createOrderRequest.ItemId,
                    ItemName = createOrderRequest.ItemName,
                    Quantity = createOrderRequest.Quantity
                };
                using (var service = Container.Resolve <FulfillmentService>())
                {
                    newFulfillment = service.Post(createFulfillment);
                }

                //Alert connections
                var hub = GlobalHost.ConnectionManager.GetHubContext("FulfillmentGridHub");
                if (hub != null)
                {
                    hub.Clients.All.addToGrid(newFulfillment);
                }
            });

            //Create an Order in the Queue when an Order is posted
            StartThread("NewOrder", (channel, msg) =>
            {
                var createOrderRequest = msg.FromJson <Order>();
                var createOrderInQueue = new OrderInQueue
                {
                    OrderId      = createOrderRequest.Id,
                    CustomerName = createOrderRequest.CustomerFirstName,
                    ItemId       = createOrderRequest.ItemId,
                    ItemName     = createOrderRequest.ItemName,
                    Quantity     = createOrderRequest.Quantity,
                    Status       = "New"
                };
                using (var service = Container.Resolve <OrderQueueService>())
                {
                    service.Post(createOrderInQueue);
                }

                //Alert connections
                var hub = GlobalHost.ConnectionManager.GetHubContext("OrdersQueueGridHub");
                if (hub != null)
                {
                    hub.Clients.All.addToGrid(createOrderInQueue);
                }
            });
        }
        public void StartSubscriberThreads() //need to resolve dependencies...
        {
            //Create a fulfillment when an Order is posted
            StartThread("NewOrder", (channel, msg) =>
                    {
                        Fulfillment newFulfillment;
                        
                        var createOrderRequest = msg.FromJson<Order>();
                        var createFulfillment = new CreateFulfillment
                        {
                            OrderId = createOrderRequest.Id,
                            ItemId = createOrderRequest.ItemId,
                            ItemName = createOrderRequest.ItemName,
                            Quantity = createOrderRequest.Quantity
                        };
                        using (var service = Container.Resolve<FulfillmentService>())
                        {
                            newFulfillment = service.Post(createFulfillment);
                        }

                        //Alert connections
                        var hub = GlobalHost.ConnectionManager.GetHubContext("FulfillmentGridHub");
                        if (hub != null)
                        {
                            hub.Clients.All.addToGrid(newFulfillment);
                        }
                    });

            //Create an Order in the Queue when an Order is posted
            StartThread("NewOrder", (channel, msg) =>
                    {
                        var createOrderRequest = msg.FromJson<Order>();
                        var createOrderInQueue = new OrderInQueue
                        {
                            OrderId = createOrderRequest.Id,
                            CustomerName = createOrderRequest.CustomerFirstName,
                            ItemId = createOrderRequest.ItemId,
                            ItemName = createOrderRequest.ItemName,
                            Quantity = createOrderRequest.Quantity,
                            Status = "New"
                        };
                        using (var service = Container.Resolve<OrderQueueService>())
                        {
                            service.Post(createOrderInQueue);
                        }

                        //Alert connections
                        var hub = GlobalHost.ConnectionManager.GetHubContext("OrdersQueueGridHub");
                        if (hub != null)
                        {
                            hub.Clients.All.addToGrid(createOrderInQueue);
                        }
                    });
        }
        public Fulfillment Post(CreateFulfillment request)
        {
            var newFulfilllment = request.TranslateTo<Fulfillment>();
            newFulfilllment.Status = "New";

            DbConnExec((con) =>
                {
                    con.Insert<Fulfillment>(newFulfilllment);
                    newFulfilllment.Id = (int)con.GetLastInsertId();
                });

            return newFulfilllment;
        }
        public Fulfillment Post(CreateFulfillment request)
        {
            var newFulfilllment = request.TranslateTo <Fulfillment>();

            newFulfilllment.Status = "New";

            DbConnExec((con) =>
            {
                con.Insert <Fulfillment>(newFulfilllment);
                newFulfilllment.Id = (int)con.GetLastInsertId();
            });

            return(newFulfilllment);
        }