@Override public ExtensionResultStatusType execute(ExtensionHandler handler, Object... params) { return ((OrderServiceExtensionHandler) handler).attachAdditionalDataToOrder((Order) params[0], (Boolean) params[1]); } };
/** * Remove the cart from the persistence layer. Subclasses may override for custom cart retrieval logic. * * @param cart the cart to remove */ protected void deleteCart(Order cart) { //We delete the order this way (rather than with a delete query) in order to ensure the cascades take place orderService.deleteOrder(cart); }
@Override public ExtensionResultStatusType execute(ExtensionHandler handler, Object... params) { return ((OrderServiceExtensionHandler) handler).findCartForCustomerWithEnhancements((Customer) params[0], (Order) params[1], (ExtensionResultHolder) params[2]); } };
public Order getNamedOrderForCustomer(String orderName, Customer customer) { return orderService.findNamedOrderForCustomer(orderName, customer); } }
@PostConstruct public void init() { if (isEnabled()) { extensionManager.registerHandler(this); } }
@Override public Order findCartForCustomerWithEnhancements(Customer customer) { ExtensionResultHolder<Order> erh = new ExtensionResultHolder<Order>(); ExtensionResultStatusType resultStatusType = extensionManager.findCartForCustomerWithEnhancements(customer, erh); if (ExtensionResultStatusType.NOT_HANDLED != resultStatusType) { return erh.getResult(); } return findCartForCustomer(customer); }
@Override public ExtensionResultStatusType attachAdditionalDataToNewNamedCart(Customer customer, Order cart) { return execute(attachAdditionalDataToNewNamedCart, customer, cart); }
@Override public ExtensionResultStatusType execute(ExtensionHandler handler, Object... params) { return ((OrderServiceExtensionHandler) handler).addOfferCodes((Order) params[0], (List<OfferCode>) params[1], (Boolean) params[2]); } };
@Override //@Transactional("blTransactionManager") public FulfillmentGroup addItemToFulfillmentGroup(FulfillmentGroupItemRequest fulfillmentGroupItemRequest, boolean priceOrder) throws PricingException { return addItemToFulfillmentGroup(fulfillmentGroupItemRequest, priceOrder, true); }
@Override public ExtensionResultStatusType execute(ExtensionHandler handler, Object... params) { return ((OrderServiceExtensionHandler) handler).preValidateUpdateQuantityOperation((Order) params[0], (OrderItemRequestDTO) params[1], (ExtensionResultHolder) params[2]); } };
@Override public ExtensionResultStatusType execute(ExtensionHandler handler, Object... params) { return ((OrderServiceExtensionHandler) handler).attachAdditionalDataToNewNamedCart((Customer) params[0], (Order) params[1]); } };
@Override public ExtensionResultStatusType execute(ExtensionHandler handler, Object... params) { return ((OrderServiceExtensionHandler) handler).preValidateCartOperation((Order) params[0], (ExtensionResultHolder) params[1]); } };
@Override public MergeCartResponse mergeCart(Customer customer, Order anonymousCart) throws PricingException, RemoveFromCartException { return mergeCart(customer, anonymousCart, true); }
@Override public ReconstructCartResponse reconstructCart(Customer customer) throws PricingException, RemoveFromCartException { return reconstructCart(customer, true); }
@Override public BundleOrderItem createBundleOrderItem(final ProductBundleOrderItemRequest itemRequest) { return createBundleOrderItem(itemRequest, true); }
@Override public ExtensionResultStatusType preValidateCartOperation(Order cart, ExtensionResultHolder erh) { return execute(preValidateCartOperation, cart, erh); }
@Override public ExtensionResultStatusType execute(ExtensionHandler handler, Object... params) { return ((OrderServiceExtensionHandler) handler).findCartForCustomerWithEnhancements((Customer) params[0], (ExtensionResultHolder) params[1]); } };
@Override public ExtensionResultStatusType attachAdditionalDataToOrder(Order order, boolean priceOrder) { return execute(attachAdditionalDataToOrder, order, priceOrder); }
@Override public ExtensionResultStatusType addOfferCodes(Order order, List<OfferCode> offerCodes, boolean priceOrder) { return execute(addOfferCodes, order, offerCodes, priceOrder); }
@Override public ExtensionResultStatusType findCartForCustomerWithEnhancements(Customer customer, Order candidateCart, ExtensionResultHolder erh) { return execute(findStaleCacheAwareCartForCustomer2, customer, candidateCart, erh); }