Class CartOfferValidationActivity
- java.lang.Object
-
- com.broadleafcommerce.cartoperation.service.checkout.workflow.activity.CartOfferValidationActivity
-
- All Implemented Interfaces:
CheckoutWorkflowActivity
public class CartOfferValidationActivity extends Object implements CheckoutWorkflowActivity
ThisCheckoutWorkflowActivity
is responsible for validating that the cart's offers, offer codes, and campaign codes are still valid.- Author:
- Skye Pekerti (SkyePekerti)
-
-
Constructor Summary
Constructors Constructor Description CartOfferValidationActivity(ExternalOfferProvider offerProvider, CampaignProvider campaignProvider, org.springframework.context.MessageSource messageSource, CartOperationService cartService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description com.broadleafcommerce.cart.client.domain.Cart
execute(@NonNull com.broadleafcommerce.cart.client.domain.Cart cart, @NonNull String requestId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Method responsible for executing some work against the cart that is required for checkout.protected CampaignProvider
getCampaignProvider()
protected CartOperationService
getCartService()
protected org.springframework.context.MessageSource
getMessageSource()
protected ExternalOfferProvider
getOfferProvider()
com.broadleafcommerce.cart.client.domain.Cart
rollback(@NonNull com.broadleafcommerce.cart.client.domain.Cart cart, @NonNull String requestId, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Method responsible for rolling back any work that was done during the execution of the#execute(Cart, String)
method.protected void
validateCampaignCodeUsages(com.broadleafcommerce.cart.client.domain.Cart cart, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Validate that the campaign codes used in the specified cart are still valid upon checkout.protected void
validateOfferAndOfferCodeUsages(com.broadleafcommerce.cart.client.domain.Cart cart, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Validate that the offers and offer codes used in the specified cart are still valid upon checkout.
-
-
-
Constructor Detail
-
CartOfferValidationActivity
public CartOfferValidationActivity(ExternalOfferProvider offerProvider, CampaignProvider campaignProvider, org.springframework.context.MessageSource messageSource, CartOperationService cartService)
-
-
Method Detail
-
execute
public com.broadleafcommerce.cart.client.domain.Cart execute(@NonNull @NonNull com.broadleafcommerce.cart.client.domain.Cart cart, @NonNull @NonNull String requestId, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Description copied from interface:CheckoutWorkflowActivity
Method responsible for executing some work against the cart that is required for checkout. This may include, but is not limited to, cart validation checks, inventory reservations, or payment authorizations.- Specified by:
execute
in interfaceCheckoutWorkflowActivity
- Parameters:
cart
- TheCart
that we're attempting to checkout with.requestId
- The id used to identify changes tied to the specific execution requestcontextInfo
- Context information around sandbox and multitenant state.- Returns:
- The final state of the cart following the execution of the activity.
-
rollback
public com.broadleafcommerce.cart.client.domain.Cart rollback(@NonNull @NonNull com.broadleafcommerce.cart.client.domain.Cart cart, @NonNull @NonNull String requestId, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Description copied from interface:CheckoutWorkflowActivity
Method responsible for rolling back any work that was done during the execution of the#execute(Cart, String)
method.- Specified by:
rollback
in interfaceCheckoutWorkflowActivity
- Parameters:
cart
- TheCart
that we were attempting to checkout with, but ran into an exception/error.requestId
- The id used to identify changes tied to the specific execution requestcontextInfo
- Context information around sandbox and multitenant state.- Returns:
- The final state of the cart following the rollback of the activity.
-
validateOfferAndOfferCodeUsages
protected void validateOfferAndOfferCodeUsages(com.broadleafcommerce.cart.client.domain.Cart cart, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Validate that the offers and offer codes used in the specified cart are still valid upon checkout.- Parameters:
cart
- theCart
that we're attempting to checkout with.contextInfo
- context surrounding sandboxing and multitenant state
-
validateCampaignCodeUsages
protected void validateCampaignCodeUsages(com.broadleafcommerce.cart.client.domain.Cart cart, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
Validate that the campaign codes used in the specified cart are still valid upon checkout.- Parameters:
cart
- theCart
that we're attempting to checkout with.contextInfo
- context surrounding sandboxing and multitenant state
-
getOfferProvider
protected ExternalOfferProvider getOfferProvider()
-
getCampaignProvider
protected CampaignProvider getCampaignProvider()
-
getMessageSource
protected org.springframework.context.MessageSource getMessageSource()
-
getCartService
protected CartOperationService getCartService()
-
-