@Override @Interceptors({CartItemInterceptor.class}) public CartItemModel addCartItem(String cartUid, String productCode, Integer quantity) throws EntityNotFoundException, ModelValidationException { LOG.trace("ENTER addCartItem(cartUid, productCode, price, quantity)"); final CartItemEntity cartItemEntity = new CartItemEntity(); try { // Get Cart Entity final TypedQuery<CartModel> cartQuery = entityManager.createNamedQuery(CartEntity.QUERY_UUID, CartModel.class); cartQuery.setParameter("uuid", UUIDUtils.getIdAsByte(UUIDUtils.fromString(cartUid))); final CartModel cart = cartQuery.getSingleResult(); LOG.debug("cart = {}", cart.toString()); // Get Product Entity final TypedQuery<ProductModel> productQuery = entityManager.createNamedQuery(ProductEntity.QUERY_PRODUCT_CODE, ProductModel.class); productQuery.setParameter("productCode", productCode); final ProductModel productInfo = productQuery.getSingleResult(); LOG.debug("productInfo = {}", productInfo.toString()); cartItemEntity.setCart(cart); cartItemEntity.setProductInfo(productInfo); cartItemEntity.setPrice(productInfo.getProductPrice()); cartItemEntity.setQuantity(quantity); cartItemEJB.persist(cartItemEntity); return cartItemEntity; } finally { LOG.trace("EXIT addCartItem(cartUid, productCode, price, quantity)"); } }
@Override @Interceptors({CartInterceptor.class}) public CartModel findByUUID(String uuid) { LOG.trace("ENTER findByUUID(uuid)"); try { final TypedQuery<CartEntity> cartQuery = entityManager.createNamedQuery(CartEntity.QUERY_UUID, CartEntity.class); cartQuery.setParameter("uuid", UUIDUtils.getIdAsByte(UUIDUtils.fromString(uuid))); return cartQuery.getSingleResult(); } finally { LOG.trace("EXIT findByUUID(uuid)"); } }