public interface FulfillmentPricingService
FulfillmentGroupMerchandiseTotalActivity to calculate costs for FulfillmentGroups in an Order. This can
 also be injected in a controller to provide estimations for various FulfillmentOptions to display to the user
 before an option is actually selected.| Modifier and Type | Method and Description | 
|---|---|
FulfillmentGroup | 
calculateCostForFulfillmentGroup(FulfillmentGroup fulfillmentGroup)
Called during the Pricing workflow to determine the cost for the  
FulfillmentGroup. | 
FulfillmentEstimationResponse | 
estimateCostForFulfillmentGroup(FulfillmentGroup fulfillmentGroup,
                               Set<FulfillmentOption> options)
This provides an estimation for a  
FulfillmentGroup with a FulfillmentOption. | 
List<FulfillmentPricingProvider> | 
getProviders()  | 
FulfillmentGroup calculateCostForFulfillmentGroup(FulfillmentGroup fulfillmentGroup) throws FulfillmentPriceException
FulfillmentGroup. This will loop through
 #getProcessors() and call FulfillmentPricingProvider.calculateCostForFulfillmentGroup(FulfillmentGroup)
 on the first processor that returns true from FulfillmentPricingProvider#canCalculateCostForFulfillmentGroup(FulfillmentGroup)fulfillmentGroup - FulfillmentPriceException - if fulfillmentGroup does not have a FulfillmentOption associated to it or
 if there was no processor found to calculate costs for fulfillmentGroupFulfillmentPricingProvider}FulfillmentEstimationResponse estimateCostForFulfillmentGroup(FulfillmentGroup fulfillmentGroup, Set<FulfillmentOption> options) throws FulfillmentPriceException
FulfillmentGroup with a FulfillmentOption. The main use case for this method
 is in a view cart controller that wants to provide estimations for different FulfillmentOptions before the user
 actually selects one. This uses getProviders() to allow third-party integrations to respond to
 estimations, and returns the first processor that returns true from FulfillmentPricingProvider.canCalculateCostForFulfillmentGroup(FulfillmentGroup, FulfillmentOption).fulfillmentGroup - options - FulfillmentGroup with a candidate FulfillmentOptionFulfillmentPriceException - if no processor was found to estimate costs for fulfillmentGroup with the given optionFulfillmentPricingProvider}List<FulfillmentPricingProvider> getProviders()
Copyright © 2019. All rights reserved.