public function yieldOrders()
    {
        $usedIndex = 0;
        $orderCollection = $this->getOrderCollection();

        while ($orderCollection && count($orderCollection)) {
            foreach ($orderCollection as $order) {
                set_time_limit(0);

                yield $usedIndex++ => $order;
            }

            $orderCollection = $this->getNextOrderCollection($usedIndex);
        }
    }