|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface FulfillmentOption
A FulfillmentOption is used to hold information about a particular type of Fulfillment implementation.
Third-party fulfillment implementations should extend this to provide their own configuration options
particular to that implementation. For instance, a UPS shipping calculator might want an admin user to be
able to specify which type of UPS shipping this FulfillmentOption represents.
This entity will be presented to the user to allow them to specify which shipping they want. A possible
scenario is that say a site can ship with both UPS and Fedex. They will import both the Fedex and UPS
third-party modules, each of which will have a unique definition of FulfillmentOption (for instance,
FedexFulfillmentOption and UPSFulfillmentOption). Let's say the site can do 2-day shipping with UPS,
and next-day shipping with Fedex. What they would do in the admin is create an instance of FedexFulfillmentOption
entity and give it the name "Overnight" (along with any needed Fedex configuration properties), then create an instance of
UPSFulfillmentOption and give it the name "2 Day". When the user goes to check out, they will then see a list
with "Overnight" and "2 day" in it. A FulfillmentPricingProvider can then be used to estimate the fulfillment cost
(and calculate the fulfillment cost) for that particular option.
FulfillmentOptions are also inherently related to FulfillmentProcessors, in that specific types of FulfillmentOption
implementations should also have a FulfillmentPricingProvider that can handle operations (estimation and calculation) for
pricing a FulfillmentGroup. Typical third-party implementations of this paradigm would have a 1 FulfillmentOption
entity implementation and 1 FulfillmentPricingProvider implementation for that particular service.
Note: even though the default Broadleaf implementation of this is non-abstract (FulfillmentOptionImpl),
it is very rare that you would actually want to instantiate a raw FulfillmentOptionImpl rather than using
a subclass of this.
FulfillmentPricingProvider}, {@link FulfillmentGroup}| Method Summary | |
|---|---|
FulfillmentType |
getFulfillmentType()
Gets the type of fulfillment that this option supports |
Long |
getId()
|
String |
getLongDescription()
Gets the long description for this option which can be shown to the user to provide more information about the option they are selecting. |
String |
getName()
Gets the name displayed to the user when they selected the FulfillmentOption for their order. |
Boolean |
getUseFlatRates()
Tells the FulfillmentPricingProvider whether it should try to use the
flat rate cost for a Sku rather than try to factor that Sku
into its shipping calculation. |
void |
setFulfillmentType(FulfillmentType fulfillmentType)
Sets the type of fulfillment that this option supports |
void |
setId(Long id)
|
void |
setLongDescription(String longDescription)
Sets the long description for this option to show to the user when they select an option for fulfilling their order |
void |
setName(String name)
Set the display name for this option that will be shown to the user to select from such as "2-day" or "Express" or "Super-saver shipping" |
void |
setUseFlatRates(Boolean useFlatRates)
Tells the FulfillmentPricingProvider whether it should try to use the
flat rate cost for a Sku rather than try to factor that Sku
into its shipping calculation |
| Method Detail |
|---|
Long getId()
void setId(Long id)
String getName()
void setName(String name)
name - - the display name for this optionString getLongDescription()
void setLongDescription(String longDescription)
longDescription - - the description to show to the userBoolean getUseFlatRates()
FulfillmentPricingProvider whether it should try to use the
flat rate cost for a Sku rather than try to factor that Sku
into its shipping calculation. This defaults to true
FulfillmentPricingProvider should use
the flat rate on a Sku when it's available rather than try to calculate
shipping for it, false otherwise. Default value is truevoid setUseFlatRates(Boolean useFlatRates)
FulfillmentPricingProvider whether it should try to use the
flat rate cost for a Sku rather than try to factor that Sku
into its shipping calculation
useFlatRates - FulfillmentType getFulfillmentType()
void setFulfillmentType(FulfillmentType fulfillmentType)
fulfillmentType -
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||