vespolina/VespolinaCartBundle — comment on commit 4597b97afad40e72746d9c7bddaabd2d474f406d
File: Model/CartItem.php line 40
By IamPersistent:

I've changed the name to isRecurring, but I guess I didn't get that pushed. The recurring data is in a Recur object that goes with a RecurringInterface on the product.

I think it is overkill to create a new class just to ask if an item is recurring or not. Its a fair question to ask and isn't tied to a service or good. A magazine is a good and it is recurring. A service does not have to be recurring. I can have both good and services in the same cart and I can have both billed once and recurring in the same cart.

If you don't put some type test like isRecurring as you go through the items in your cart during checkout, which you must do because they are handled differently on billing, then you have to test for the instance of the said CartItemService. IMHO, way too much complication. It is the equivalent of having a different cart item interface for a free product.