private IEnumerable AssignOrdersToRobots()

in RobotOrchestrator.OrderManager/OrderManager.cs [146:168]


        private IEnumerable<OrderAssignment> AssignOrdersToRobots(IEnumerable<Order> orders, IEnumerable<Robot> availableRobots)
        {
            var assignments = new List<OrderAssignment>();

            var robotIterator = availableRobots.GetEnumerator();
            
            foreach (var order in orders)
            {
                robotIterator.MoveNext();
                var robot = robotIterator.Current;

                if (robot != null)
                {
                    assignments.Add(new OrderAssignment(order, robot));
                }
                else
                {
                    assignments.Add(new OrderAssignment(order, null));
                }
            }

            return assignments;
        }