Interface FulfillmentPricingProvider
- All Known Implementing Classes:
BandedFulfillmentPricingProvider
,FixedFulfillmentPricingProvider
,ShipEngineFulfillmentPricingProvider
,VirtualFulfillmentPricingProvider
public interface FulfillmentPricingProvider
Defines a service that provides fulfillment pricing, e.g., shipping.
- Author:
- Chad Harchar (charchar)
-
Method Summary
Modifier and TypeMethodDescriptiondefault com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse
calculateCostForFulfillmentGroup
(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest) Deprecated, for removal: This API element is subject to removal in a future version.com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse
calculateCostForFulfillmentGroup
(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Calculate shipping for a request that includes a specified fulfillment option.default boolean
canCalculateCostForOption
(String fulfillmentOptionName) Deprecated, for removal: This API element is subject to removal in a future version.since 1.0.0, in favor ofcanCalculateCostForOption(String, ContextInfo)
boolean
canCalculateCostForOption
(String fulfillmentOptionName, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Whether this provider has knowledge of the provided option and thus can provide cost information for it.default boolean
canProvidePricedFulfillmentOptions
(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest) Deprecated, for removal: This API element is subject to removal in a future version.since 1.1.0, in favor ofcanProvidePricedFulfillmentOptions(FulfillmentPricingRequest, ContextInfo)
default boolean
canProvidePricedFulfillmentOptions
(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Whether this provider can provide fulfillment options based on the "fulfillmentPricingRequest"default com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse
estimateCostForFulfillmentGroup
(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest) Estimate shipping for a request that includes a specified fulfillment option.com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse
estimateCostForFulfillmentGroup
(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Estimate shipping for a request that includes a specified fulfillment option.default List<com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse>
getFulfillmentOptionPricingResponses
(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest) Deprecated.default List<com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse>
providePricedFulfillmentOptions
(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest) Deprecated, for removal: This API element is subject to removal in a future version.since 1.0.0, in favor ofprovidePricedFulfillmentOptions(FulfillmentPricingRequest, ContextInfo)
List<com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse>
providePricedFulfillmentOptions
(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Retrieve all possible priced fulfillment options for the provided request.
-
Method Details
-
getFulfillmentOptionPricingResponses
@Deprecated default List<com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse> getFulfillmentOptionPricingResponses(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest) Deprecated.Retrieve all possible priced fulfillment options for the provided request. Intended to be used to display options to the customer for selection.- Parameters:
fulfillmentPricingRequest
- The request for which to calculate shipping and return options.- Returns:
- All possible priced fulfillment options for the provided request.
-
providePricedFulfillmentOptions
@Deprecated(since="1.0.0", forRemoval=true) default List<com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse> providePricedFulfillmentOptions(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest) Deprecated, for removal: This API element is subject to removal in a future version.since 1.0.0, in favor ofprovidePricedFulfillmentOptions(FulfillmentPricingRequest, ContextInfo)
Retrieve all possible priced fulfillment options for the provided request. Intended to be used to display options to the customer for selection.- Parameters:
fulfillmentPricingRequest
- The request for which to calculate shipping and return options.- Returns:
- All possible priced fulfillment options for the provided request.
-
providePricedFulfillmentOptions
List<com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse> providePricedFulfillmentOptions(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Retrieve all possible priced fulfillment options for the provided request. Intended to be used to display options to the customer for selection.- Parameters:
fulfillmentPricingRequest
- The request for which to calculate shipping and return options.contextInfo
- context information around sandbox and multitenant state- Returns:
- All possible priced fulfillment options for the provided request.
-
canProvidePricedFulfillmentOptions
@Deprecated(since="1.1.0", forRemoval=true) default boolean canProvidePricedFulfillmentOptions(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest) Deprecated, for removal: This API element is subject to removal in a future version.since 1.1.0, in favor ofcanProvidePricedFulfillmentOptions(FulfillmentPricingRequest, ContextInfo)
Whether this provider can provide fulfillment options based on the "fulfillmentPricingRequest"- Parameters:
fulfillmentPricingRequest
- The request used to identify relevant fulfillment options- Returns:
- Whether this provider can provide fulfillment options based on the "fulfillmentPricingRequest"
-
canProvidePricedFulfillmentOptions
default boolean canProvidePricedFulfillmentOptions(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Whether this provider can provide fulfillment options based on the "fulfillmentPricingRequest"- Parameters:
fulfillmentPricingRequest
- The request used to identify relevant fulfillment optionscontextInfo
- context information around sandbox and multitenant state- Returns:
- Whether this provider can provide fulfillment options based on the "fulfillmentPricingRequest"
-
calculateCostForFulfillmentGroup
@Deprecated(since="1.0.0", forRemoval=true) default com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse calculateCostForFulfillmentGroup(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest) Deprecated, for removal: This API element is subject to removal in a future version.since 1.0.0, in favor ofcalculateCostForFulfillmentGroup(FulfillmentPricingRequest, ContextInfo)
Calculate shipping for a request that includes a specified fulfillment option.- Parameters:
fulfillmentPricingRequest
- The request for which to calculate shipping.- Returns:
- Response object with calculated shipping cost for the provided request.
-
calculateCostForFulfillmentGroup
com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse calculateCostForFulfillmentGroup(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Calculate shipping for a request that includes a specified fulfillment option.- Parameters:
fulfillmentPricingRequest
- The request for which to calculate shipping.contextInfo
- context information around sandbox and multitenant state- Returns:
- Response object with calculated shipping cost for the provided request.
-
canCalculateCostForOption
@Deprecated(since="1.0.0", forRemoval=true) default boolean canCalculateCostForOption(@Nullable String fulfillmentOptionName) Deprecated, for removal: This API element is subject to removal in a future version.since 1.0.0, in favor ofcanCalculateCostForOption(String, ContextInfo)
Whether this provider has knowledge of the provided option and thus can provide cost information for it.- Parameters:
fulfillmentOptionName
- The option to consider whether this provider can calculate cost information.- Returns:
- Whether this provider has knowledge of the provided option and thus can provide cost information for it.
-
canCalculateCostForOption
boolean canCalculateCostForOption(@Nullable String fulfillmentOptionName, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Whether this provider has knowledge of the provided option and thus can provide cost information for it.- Parameters:
fulfillmentOptionName
- The option to consider whether this provider can calculate cost information.contextInfo
- context information around sandbox and multitenant state- Returns:
- Whether this provider has knowledge of the provided option and thus can provide cost information for it.
-
estimateCostForFulfillmentGroup
default com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse estimateCostForFulfillmentGroup(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest) Estimate shipping for a request that includes a specified fulfillment option.- Parameters:
fulfillmentPricingRequest
- The request for which to estimate shipping.- Returns:
- Response object with estimated shipping cost for the provided request.
-
estimateCostForFulfillmentGroup
com.broadleafcommerce.shipping.domain.FulfillmentOptionPricedResponse estimateCostForFulfillmentGroup(com.broadleafcommerce.shipping.domain.FulfillmentPricingRequest fulfillmentPricingRequest, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Estimate shipping for a request that includes a specified fulfillment option.- Parameters:
fulfillmentPricingRequest
- The request for which to estimate shipping.contextInfo
- context information around sandbox and multitenant state- Returns:
- Response object with estimated shipping cost for the provided request.
-
calculateCostForFulfillmentGroup(FulfillmentPricingRequest, ContextInfo)