コード例 #1
0
ファイル: OrderService.cs プロジェクト: rkelver/OrderingTest
        private OrderAdded GetNext(OrderRuleTypeEnum rule)
        {
            var queue = GetRuleBasedQueue(rule);
            var order = queue.GetNext();

            var orderAdded = new OrderAdded
            {
                AddedAtDate          = DateTime.UtcNow,
                CountryType          = order.CountryType,
                FulFilled            = order.Items.All(i => i.FulFilled),
                Id                   = order.Id,
                Items                = order.Items,
                LastTryDate          = DateTime.UtcNow,
                OrderOriginationDate = order.OrderDate
            };

            return(orderAdded);
        }
コード例 #2
0
ファイル: OrderService.cs プロジェクト: rkelver/OrderingTest
 private IQueue <PendingOrder> GetRuleBasedQueue(OrderRuleTypeEnum orderOrderRuleType)
 {
     return(Factories[orderOrderRuleType]);
 }
コード例 #3
0
ファイル: OrderService.cs プロジェクト: rkelver/OrderingTest
 public OrderAdded Process(OrderRuleTypeEnum rule)
 {
     return(GetNext(rule));
 }