Interface ItemOfferProcessor
-
- All Known Implementing Classes:
DefaultItemOfferProcessor
public interface ItemOfferProcessorA service for calculating, determining, and applying the bestorder itemoffers.- Author:
- Chad Harchar (charchar), Brian Polster (bpolster)
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidapplyItemAdjustments(OfferProcessingContext context, ItemOfferPermutationResult result)For item processing, the adjustments are stored onLineItemOfferDetailrecords.voidfindBestItemOffersForPermutation(OfferProcessingContext context, CombinedTypesOfferPermutation combinedPermutation)voidprepareForItemOfferProcessing(EnhancedOrder order, List<CandidateItemOffer> candidateItemOffers)Item offer processing can benefit from setup activities that are used by all of the permutations.
-
-
-
Method Detail
-
prepareForItemOfferProcessing
void prepareForItemOfferProcessing(EnhancedOrder order, List<CandidateItemOffer> candidateItemOffers)
Item offer processing can benefit from setup activities that are used by all of the permutations. Most notably, finding the maximum savings for a given offer which can be used to prioritize the order in which offers are attempted within a cart.- Parameters:
order-candidateItemOffers-
-
findBestItemOffersForPermutation
void findBestItemOffersForPermutation(OfferProcessingContext context, CombinedTypesOfferPermutation combinedPermutation)
-
applyItemAdjustments
void applyItemAdjustments(OfferProcessingContext context, ItemOfferPermutationResult result)
For item processing, the adjustments are stored onLineItemOfferDetailrecords. These detail records are stored in theItemOfferPermutationResult.getLineItemDetailMap()- Parameters:
context-result-
-
-