Enum Class DefaultProductType
- All Implemented Interfaces:
Serializable
,Comparable<DefaultProductType>
,Constable
The possible types of targets a
Product
can have.- Author:
- Bongani Mbigi (bongani-m)
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>>
-
Enum Constant Summary
Enum ConstantDescriptionDenotes that the product is meant to represent a simple bundle of other products, with each bundle item represented as anIncludedProduct
.Denotes that the product is meant to represent a landing page that shows a selection of other products the customer can choose from.Denotes a simple product which has no variants or complex configuration such as a Hot Sauce.Denotes a configurable product that hasVariants
determined byProductOptions
like color and size for a T-Shirt. -
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
isBundleProduct
(String productType) static boolean
isMerchandisingProduct
(String productType) static boolean
isSelectorProduct
(String productType) static boolean
isStandardProduct
(String productType) static boolean
isVariantBasedProduct
(String productType) static DefaultProductType
Returns the enum constant of this class with the specified name.static DefaultProductType[]
values()
Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
STANDARD
Denotes a simple product which has no variants or complex configuration such as a Hot Sauce. Standard products may be added to the cart on their own or they may have add-ons that get added with them. -
VARIANT_BASED
Denotes a configurable product that hasVariants
determined byProductOptions
like color and size for a T-Shirt. It is theVariants
which are added to the cart after the user selects the options. -
BUNDLE
Denotes that the product is meant to represent a simple bundle of other products, with each bundle item represented as anIncludedProduct
. The bundle has a set price that is prorated down to the included items proportionally to their original prices when viewed in an OMS. This looks like a single item to the customer when in the cart, but will be broken down in the OMS. -
MERCHANDISING_PRODUCT
Denotes a complex, configurable product that acts as a container for otherProducts
orVariants
that may be fixed or configurable. This is primarily a bundling concept. The price will be derived from the bundled items and be a range if the customer can select a varying number of the bundled items (e.g., can choose 1 or more of an item). -
SELECTOR
Denotes that the product is meant to represent a landing page that shows a selection of other products the customer can choose from. It acts somewhat like a category in that it is only for grouping other products and cannot itself be added to a cart. This could be used as a landing page for different subscription levels for the same or similar services or products like for magazines.
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum class has no constant with the specified nameNullPointerException
- if the argument is null
-
friendlyNameKey
-
isStandardProduct
-
isVariantBasedProduct
-
isBundleProduct
-
isMerchandisingProduct
-
isSelectorProduct
-