Interface ShippingLabelProvider
- All Known Implementing Classes:
ShipEngineFulfillmentPricingProvider
public interface ShippingLabelProvider
Provides methods to facilitate creating or accessing shipping labels.
- Author:
- Cade Rea (cade-rea)
-
Method Summary
Modifier and TypeMethodDescriptionboolean
canProvideShippingLabel
(String fulfillmentOptionName) Indicate if this fulfillment provider can provide shipping labels for the given fulfillment option.provideShippingLabel
(com.broadleafcommerce.order.client.domain.OrderFulfillment orderFulfillment, boolean purchase, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Get the shipping label associated with this fulfillment.boolean
shippingLabelIsPurchased
(com.broadleafcommerce.order.client.domain.OrderFulfillment orderFulfillment, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Indicate if a shipping label has already been purchased for this fulfillment.
-
Method Details
-
canProvideShippingLabel
Indicate if this fulfillment provider can provide shipping labels for the given fulfillment option.- Parameters:
fulfillmentOptionName
- The name of the fulfillment option to check.- Returns:
- true if this
ShippingLabelProvider
can provide a shipping label for the given fulfillmentOptionName.
-
shippingLabelIsPurchased
boolean shippingLabelIsPurchased(com.broadleafcommerce.order.client.domain.OrderFulfillment orderFulfillment, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) Indicate if a shipping label has already been purchased for this fulfillment.- Parameters:
orderFulfillment
-- Returns:
- true if there is an existing label for this fulfillment
-
provideShippingLabel
ShippingLabelDownload provideShippingLabel(com.broadleafcommerce.order.client.domain.OrderFulfillment orderFulfillment, boolean purchase, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo) throws LabelException Get the shipping label associated with this fulfillment. If a label does not already exist, the purchase parameter will be checked to determine if a new label should be purchased.- Parameters:
orderFulfillment
- The fulfillment for which to get a shipping label.purchase
- True if shipping should be purchased, false if an existing label should be read.- Returns:
- a Map with the label response for the shipping label
- Throws:
LabelException
-