/** * @param Basket $basket * @param Product $product * @return BasketItem * @throws BasketItemNotFound */ public function findBasketItem(Basket $basket, Product $product) { $data = ['basket' => $basket->getId(), 'product' => $product->getId()]; $item = $this->_getItem($data); if (empty($item)) { throw new BasketItemNotFound($this->_newInstance($data)); } return $item; }
public function __construct(Product $product = "", Exception $previous = null) { parent::__construct('Product #' . $product->getId() . ' not found.', 404, $previous); }
/** * @param array $data * @return string */ protected function _getId(array $data) { return Product::calculateId($data); }