Skip to content

Commit c4e89a8

Browse files
bpolsterdanielcolgrove
authored andcommitted
Provide an extension handler to allow for a module or custom implementation to choose the current cart using an alternate. For BroadleafCommerce/QA#877
1 parent d8335fc commit c4e89a8

File tree

3 files changed

+8
-3
lines changed

3 files changed

+8
-3
lines changed

core/broadleaf-framework-web/src/main/java/org/broadleafcommerce/core/web/order/security/AbstractCartStateRequestProcessorExtensionHandler.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
import org.broadleafcommerce.common.extension.ExtensionResultHolder;
2424
import org.broadleafcommerce.common.extension.ExtensionResultStatusType;
2525
import org.broadleafcommerce.core.order.domain.Order;
26+
import org.broadleafcommerce.profile.core.domain.Customer;
27+
import org.springframework.web.context.request.WebRequest;
2628

2729

2830
/**
@@ -38,7 +40,7 @@ public abstract class AbstractCartStateRequestProcessorExtensionHandler extends
3840
* @return
3941
*/
4042
@Override
41-
public ExtensionResultStatusType lookupOrCreateCart(ExtensionResultHolder<Order> resultHolder) {
43+
public ExtensionResultStatusType lookupOrCreateCart(WebRequest request, Customer customer, ExtensionResultHolder<Order> resultHolder) {
4244
return ExtensionResultStatusType.NOT_HANDLED;
4345
}
4446
}

core/broadleaf-framework-web/src/main/java/org/broadleafcommerce/core/web/order/security/CartStateRequestProcessor.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ public void process(WebRequest request) {
111111
}
112112

113113
ExtensionResultHolder<Order> erh = new ExtensionResultHolder<Order>();
114-
extensionManager.getProxy().lookupOrCreateCart(erh);
114+
extensionManager.getProxy().lookupOrCreateCart(request, customer, erh);
115115

116116
Order cart;
117117
if (erh.getResult() != null) {

core/broadleaf-framework-web/src/main/java/org/broadleafcommerce/core/web/order/security/CartStateRequestProcessorExtensionHandler.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424
import org.broadleafcommerce.common.extension.ExtensionResultHolder;
2525
import org.broadleafcommerce.common.extension.ExtensionResultStatusType;
2626
import org.broadleafcommerce.core.order.domain.Order;
27+
import org.broadleafcommerce.profile.core.domain.Customer;
28+
import org.springframework.web.context.request.WebRequest;
2729

2830

2931
/**
@@ -35,9 +37,10 @@ public interface CartStateRequestProcessorExtensionHandler extends ExtensionHand
3537
* Throws an exception if cart is invalid.
3638
*
3739
* @param cart
40+
* @param customer (the current customer)
3841
* @param resultHolder
3942
* @return
4043
*/
41-
public ExtensionResultStatusType lookupOrCreateCart(ExtensionResultHolder<Order> resultHolder);
44+
public ExtensionResultStatusType lookupOrCreateCart(WebRequest request, Customer customer, ExtensionResultHolder<Order> resultHolder);
4245

4346
}

0 commit comments

Comments
 (0)