Class ProductOption
- java.lang.Object
-
- com.broadleafcommerce.catalogbrowse.domain.ProductOption
-
- All Implemented Interfaces:
Serializable
public class ProductOption extends Object implements Serializable
A "product option" encapsulates additional, variable information about a
Productexplicitly designed for customer-facing input. This can be info necessary for distinguishing particularvariantssuch as shirt size, color, or material, or it can be some custom user-input such as a name to emboss on the back of a jersey. Finally, it can even drive additional products that should be added to the cart along with the product that it is configured for.- Author:
- Nathan Moore (nathandmoore)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ProductOption()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddAttribute(String name, Object value)Takes in any additional attributes passed in the request not matching any defined properties.protected booleancanEqual(Object other)booleanequals(Object o)Map<String,Object>getAttribute()Return any additional attributes passed in the request not matching any defined properties.Map<String,Object>getAttributes()Map holding any additional attributes passed in the request not matching any defined properties.ItemChoicegetItemChoice()Configuration for theDefaultProductOptionType.ITEM_CHOICE.StringgetType()Controls both how the customer should be inputting values to fill out this option as well as storage of where the value will go once added to the cart.inthashCode()voidsetAttributes(Map<String,Object> attributes)Map holding any additional attributes passed in the request not matching any defined properties.voidsetItemChoice(ItemChoice itemChoice)Configuration for theDefaultProductOptionType.ITEM_CHOICE.voidsetType(String type)Controls both how the customer should be inputting values to fill out this option as well as storage of where the value will go once added to the cart.StringtoString()
-
-
-
Method Detail
-
addAttribute
public void addAttribute(String name, Object value)
Takes in any additional attributes passed in the request not matching any defined properties.- Parameters:
name- Name of the additional attributevalue- Value of the additional attribute
-
getAttribute
public Map<String,Object> getAttribute()
Return any additional attributes passed in the request not matching any defined properties.- Returns:
- any additional attributes passed in the request not matching any defined properties.
-
getType
public String getType()
Controls both how the customer should be inputting values to fill out this option as well as storage of where the value will go once added to the cart.- Returns:
- which type of input this option is configured for
- See Also:
DefaultProductOptionType
-
getItemChoice
public ItemChoice getItemChoice()
Configuration for theDefaultProductOptionType.ITEM_CHOICE. Drives customer selection of an additional item to add to their cart- Returns:
- configuration if the type of this option is an
DefaultProductOptionType.ITEM_CHOICE, otherwise null
-
getAttributes
public Map<String,Object> getAttributes()
Map holding any additional attributes passed in the request not matching any defined properties.
-
setType
public void setType(String type)
Controls both how the customer should be inputting values to fill out this option as well as storage of where the value will go once added to the cart.- Parameters:
type- the type of input that the drives customer selection, defaults fromDefaultProductOptionType- See Also:
DefaultProductOptionType
-
setItemChoice
public void setItemChoice(ItemChoice itemChoice)
Configuration for theDefaultProductOptionType.ITEM_CHOICE. Drives customer selection of an additional item to add to their cart- Parameters:
itemChoice- configuration only whentypeisDefaultProductOptionType.ITEM_CHOICE
-
setAttributes
public void setAttributes(Map<String,Object> attributes)
Map holding any additional attributes passed in the request not matching any defined properties.
-
canEqual
protected boolean canEqual(Object other)
-
-