@Service(value="blOfferServiceExtensionManager") public class OfferServiceExtensionManager extends ExtensionManager<OfferServiceExtensionHandler> implements OfferServiceExtensionHandler
| Modifier and Type | Field and Description |
|---|---|
static ExtensionManagerOperation |
addAdditionalOffersForCode |
static ExtensionManagerOperation |
applyAdditionalFilters |
static ExtensionManagerOperation |
applyAdditionalRuleVariablesForItemOfferEvaluation |
static ExtensionManagerOperation |
applyItemOffer |
static ExtensionManagerOperation |
buildOfferCodeListForCustomer |
static ExtensionManagerOperation |
calculatePotentialSavings |
static ExtensionManagerOperation |
chooseSaleOrRetailAdjustments |
static ExtensionManagerOperation |
createOrderItemPriceDetailAdjustment |
static ExtensionManagerOperation |
removeOfferCodeFromOrder |
static ExtensionManagerOperation |
resetPriceDetails |
static String |
STOP_PROCESSING |
static ExtensionManagerOperation |
synchronizeAdjustmentsAndPrices |
extensionHandler, handlers, handlersSorted, LOCK_OBJECT| Constructor and Description |
|---|
OfferServiceExtensionManager() |
| Modifier and Type | Method and Description |
|---|---|
ExtensionResultStatusType |
addAdditionalOffersForCode(List<Offer> offers,
OfferCode offerCode)
Allows module extensions to add additional offers for a given offer code.
|
ExtensionResultStatusType |
applyAdditionalFilters(List<Offer> offers,
Order order) |
ExtensionResultStatusType |
applyAdditionalRuleVariablesForItemOfferEvaluation(PromotableOrderItem orderItem,
HashMap<String,Object> vars)
Allows a module to append additional rule variables that may be needed for order item evaluation
|
ExtensionResultStatusType |
applyItemOffer(PromotableOrder order,
PromotableCandidateItemOffer itemOffer,
Map<String,Object> contextMap)
Modules may need to extend the applyItemOffer logic
For example, a subscription module might creates future payment adjustments.
|
ExtensionResultStatusType |
buildOfferCodeListForCustomer(Customer customer,
List<OfferCode> offerCodes)
Allows module extension to add additional offer codes to the list, given the customer
|
ExtensionResultStatusType |
calculatePotentialSavings(PromotableCandidateItemOffer itemOffer,
PromotableOrderItem item,
int quantity,
Map<String,Object> contextMap)
Modules may extend the calculatePotentialSavings method.
|
ExtensionResultStatusType |
chooseSaleOrRetailAdjustments(PromotableOrder order)
Allows a module to finalize adjustments.
|
ExtensionResultStatusType |
createOrderItemPriceDetailAdjustment(ExtensionResultHolder<?> resultHolder,
OrderItemPriceDetail itemDetail)
Allows module extensions to add a create a new instance of OrderItemPriceDetailAdjustment.
|
boolean |
isEnabled()
If false, the ExtensionManager should skip this Handler.
|
ExtensionResultStatusType |
removeOfferCodeFromOrder(OfferCode offerCode,
Order order) |
ExtensionResultStatusType |
resetPriceDetails(PromotableOrderItem item)
Modules may need to clear additional offer details when resetPriceDetails is called.
|
ExtensionResultStatusType |
synchronizeAdjustmentsAndPrices(PromotableOrder order)
Allows a module to amend the data that synchronizes the
PromotableOrder with the Order |
continueOnHandled, execute, getHandlers, getPriority, getProxy, invoke, registerHandler, setHandlers, shouldContinue, sortHandlersclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetPrioritypublic static final String STOP_PROCESSING
public static final ExtensionManagerOperation applyAdditionalFilters
public static final ExtensionManagerOperation buildOfferCodeListForCustomer
public static final ExtensionManagerOperation calculatePotentialSavings
public static final ExtensionManagerOperation resetPriceDetails
public static final ExtensionManagerOperation applyItemOffer
public static final ExtensionManagerOperation synchronizeAdjustmentsAndPrices
public static final ExtensionManagerOperation chooseSaleOrRetailAdjustments
public static final ExtensionManagerOperation createOrderItemPriceDetailAdjustment
public static final ExtensionManagerOperation applyAdditionalRuleVariablesForItemOfferEvaluation
public static final ExtensionManagerOperation addAdditionalOffersForCode
public static final ExtensionManagerOperation removeOfferCodeFromOrder
public ExtensionResultStatusType applyAdditionalFilters(List<Offer> offers, Order order)
applyAdditionalFilters in interface OfferServiceExtensionHandlerpublic ExtensionResultStatusType buildOfferCodeListForCustomer(Customer customer, List<OfferCode> offerCodes)
OfferServiceExtensionHandlerbuildOfferCodeListForCustomer in interface OfferServiceExtensionHandlerpublic ExtensionResultStatusType calculatePotentialSavings(PromotableCandidateItemOffer itemOffer, PromotableOrderItem item, int quantity, Map<String,Object> contextMap)
OfferServiceExtensionHandlercalculatePotentialSavings in interface OfferServiceExtensionHandlerpublic ExtensionResultStatusType resetPriceDetails(PromotableOrderItem item)
OfferServiceExtensionHandlerresetPriceDetails in interface OfferServiceExtensionHandlerpublic ExtensionResultStatusType applyItemOffer(PromotableOrder order, PromotableCandidateItemOffer itemOffer, Map<String,Object> contextMap)
OfferServiceExtensionHandlerapplyItemOffer in interface OfferServiceExtensionHandlerpublic ExtensionResultStatusType synchronizeAdjustmentsAndPrices(PromotableOrder order)
OfferServiceExtensionHandlerPromotableOrder with the OrdersynchronizeAdjustmentsAndPrices in interface OfferServiceExtensionHandlerpublic ExtensionResultStatusType chooseSaleOrRetailAdjustments(PromotableOrder order)
OfferServiceExtensionHandlerchooseSaleOrRetailAdjustments in interface OfferServiceExtensionHandlerpublic ExtensionResultStatusType createOrderItemPriceDetailAdjustment(ExtensionResultHolder<?> resultHolder, OrderItemPriceDetail itemDetail)
OfferServiceExtensionHandlercreateOrderItemPriceDetailAdjustment in interface OfferServiceExtensionHandlerpublic ExtensionResultStatusType applyAdditionalRuleVariablesForItemOfferEvaluation(PromotableOrderItem orderItem, HashMap<String,Object> vars)
OfferServiceExtensionHandlerapplyAdditionalRuleVariablesForItemOfferEvaluation in interface OfferServiceExtensionHandlerorderItem - - the promotable order item in considerationvars - - the rule mappublic ExtensionResultStatusType addAdditionalOffersForCode(List<Offer> offers, OfferCode offerCode)
OfferServiceExtensionHandleraddAdditionalOffersForCode in interface OfferServiceExtensionHandlerpublic ExtensionResultStatusType removeOfferCodeFromOrder(OfferCode offerCode, Order order)
removeOfferCodeFromOrder in interface OfferServiceExtensionHandlerpublic boolean isEnabled()
ExtensionHandlerisEnabled in interface ExtensionHandlerCopyright © 2022. All rights reserved.