java.lang.Object
com.broadleafcommerce.cart.client.domain.CartItem
All Implemented Interfaces:
com.broadleafcommerce.data.tracking.core.ContextStateAware, com.broadleafcommerce.money.CurrencyConsumer, Serializable, javax.money.CurrencySupplier

public class CartItem extends Object implements Serializable, com.broadleafcommerce.data.tracking.core.ContextStateAware, com.broadleafcommerce.money.CurrencyConsumer, javax.money.CurrencySupplier
An item in a Cart. Contains information related to pricing, quantity, and external object references.
Author:
Chad Harchar (charchar)
See Also:
  • Constructor Details

    • CartItem

      public CartItem()
  • Method Details

    • hasConfigErrors

      public boolean hasConfigErrors()
      Returns:
      Whether any of the configuration error fields have contents.
    • clearConfigErrors

      public void clearConfigErrors()
      Clears all configuration error fields of contents.
    • getRecurringPeriodTypeWithDependentItems

      public Optional<String> getRecurringPeriodTypeWithDependentItems()
    • getUnitPriceWithDependentItems

      public javax.money.MonetaryAmount getUnitPriceWithDependentItems()
    • getRecurringPriceWithDependentItems

      public javax.money.MonetaryAmount getRecurringPriceWithDependentItems()
      Since:
      CartClient 2.0.4
    • getSubtotalWithDependentItems

      public javax.money.MonetaryAmount getSubtotalWithDependentItems()
    • getRecurringSubtotalWithDependentItems

      public javax.money.MonetaryAmount getRecurringSubtotalWithDependentItems()
      Since:
      CartClient 2.0.4
    • getAdjustmentsTotalWithDependentItems

      public javax.money.MonetaryAmount getAdjustmentsTotalWithDependentItems()
    • getRecurringAdjustmentsTotalWithDependentItems

      public javax.money.MonetaryAmount getRecurringAdjustmentsTotalWithDependentItems()
      Since:
      CartClient 2.0.4
    • getTotalWithDependentItems

      public javax.money.MonetaryAmount getTotalWithDependentItems()
    • getRecurringTotalWithDependentItems

      public javax.money.MonetaryAmount getRecurringTotalWithDependentItems()
      Since:
      CartClient 2.0.4
    • getUnitPriceWithAdjustments

      public javax.money.MonetaryAmount getUnitPriceWithAdjustments()
    • hasFreeTrial

      public boolean hasFreeTrial()
    • getCurrency

      public javax.money.CurrencyUnit getCurrency()
      Specified by:
      getCurrency in interface javax.money.CurrencySupplier
    • getId

      public String getId()
      The context ID of the cart.
      Returns:
      the context ID of the cart
    • getName

      public String getName()
      The name of this item. Typically derived from the product or sku name.
      Returns:
      The name of this item. Typically derived from the product or sku name.
    • getUri

      public String getUri()
      The navigable uri of the corresponding catalog entry for this cart item.
      Returns:
      The navigable uri of the corresponding catalog entry for this cart item.
    • getQuantity

      public Integer getQuantity()
      The number of this item in the Cart.
      Returns:
      The number of this item in the Cart.
    • getDependentCartItems

      public List<CartItem> getDependentCartItems()
      CartItems that depend on this CartItem. Also could be called "child items".
      Returns:
      CartItems that depend on this CartItem. Also could be called "child items".
    • getDependentItemDetails

      public DependentItemDetails getDependentItemDetails()
      If this CartItem is a dependent cart item, this contains additional details about the dependent CartItem's dependency on its parent.

      This should always be populated for items within getDependentCartItems(), and should never be populated for non-dependent items.

      Returns:
      details about the dependent CartItem's dependency on its parent
    • isOverridePriceFlag

      public boolean isOverridePriceFlag()
      Whether the price of this CartItem was specifically overridden, whether from a CSR or an automatic process.
      Returns:
      Whether the price of this CartItem was specifically overridden, whether from a CSR or an automatic process.
    • getPriceListId

      public String getPriceListId()
      The id of the price list used to get the pricing for this CartItem.
      Returns:
      The id of the price list used to get the pricing for this CartItem.
    • getUnitPrice

      public javax.money.MonetaryAmount getUnitPrice()
      The individual unit price for a CartItem.
      Returns:
      The individual unit price for a CartItem.
    • getUnitPriceType

      public String getUnitPriceType()
      The type of the unit price for a CartItem. Typically "salePrice", "standardPrice", or "basePrice".
      Returns:
      The type of the unit price for a CartItem.
    • getRecurringPriceTypeOverride

      public String getRecurringPriceTypeOverride()
      Overrides unitPriceType for the recurringPrice in cases where they must diverge. Usually only in Offer use cases where an offer cannot apply to a sale recurring price but can apply to the standard recurring price and we need to leave the upfront price as the sale price—or vice versa.
      Since:
      Cart Client 2.0.4
    • getRecurringPrice

      public com.broadleafcommerce.order.common.domain.RecurringPriceDetail getRecurringPrice()
      This is the recurring price if any from the same source as the unitPrice. The recurring price is used for subscriptions and is not expected to be charged at checkout typically.
      Returns:
      This is the recurring price if any from the same source as the unitPrice.
      Since:
      Cart Client 2.0.4
      See Also:
      • termDurationType
      • termDurationLength
    • getUsagePrice

      public com.broadleafcommerce.order.common.domain.UsagePriceDetail getUsagePrice()
      This is the usage price if any from the same source as the unitPrice. The usage price represents a charge when an item is used, e.g., when using minutes above the base allowance. This is generally just information from a Cart's perspective.
      Returns:
      This is the usage price if any from the same source as the unitPrice.
      Since:
      Cart Client 2.0.4
    • getTermDurationLength

      public Integer getTermDurationLength()
      The length of the terms, e.g., if this is 36 and termDurationType is MONTHS, then the recurringPrice should be charged for 36 months.
      Since:
      Cart Client 2.0.4
      See Also:
      • termDurationType
      • recurringPrice
    • getTermDurationType

      public String getTermDurationType()
      The term duration type, e.g. DAYS, WEEKS, MONTHS, YEARS.
      Since:
      Cart Client 2.0.4
      See Also:
      • termDurationLength
      • recurringPrice
    • getAdjustmentsTotal

      public javax.money.MonetaryAmount getAdjustmentsTotal()
      The total adjustment price for all adjustments of a CartItem.
      Returns:
      The total adjustment price for all adjustments of a CartItem.
    • getSubtotal

      public javax.money.MonetaryAmount getSubtotal()
      The subtotal price of this CartItem. Typically calculated from getUnitPrice() * getQuantity().
      Returns:
      The subtotal price of this CartItem.
    • getTotal

      public javax.money.MonetaryAmount getTotal()
      The total price of this CartItem. Typically calculated from getSubtotal() - getAdjustmentsTotal().
      Returns:
      The total price of this CartItem.
    • getPricingStrategy

      public String getPricingStrategy()
      For dependent cart items, this strategy is used to indicate how the price should be incorporated into the overall cart subtotal - i.e. whether this cart item's price should be added to the subtotal (the ADD_TO_PARENT strategy) or if the parent cart item's price already includes this item's price (the INCLUDED_IN_PARENT strategy). By default, the ADD_TO_PARENT strategy is used. Note: Regardless of this strategy, if the dependent cart item has a related FulfillmentItem, then there will likely be a tax amount related to the item which be included in the cart's overall price.
      Returns:
      the pricing strategy for this item.
      See Also:
    • getPricingKey

      public String getPricingKey()
      System-wide unique identifier to configure specific pricing for this cart item. Relevant if pricing data is managed in a separate system or data store, like the Broadleaf pricing services.
      Returns:
      a unique key to identify this product
    • getItemAdjustments

      public List<com.broadleafcommerce.order.common.domain.Adjustment> getItemAdjustments()
      Adjustments to item pricing that should be applied to getSubtotal().
      Returns:
      Adjustments to item pricing that should be applied to getSubtotal().
    • getProratedOrderOfferAdjustments

      public List<com.broadleafcommerce.order.common.domain.ProratedOfferAdjustment> getProratedOrderOfferAdjustments()
      Prorated adjustments for this item from order-level offers.

      This information is only needed for downstream services for uses like refund calculation, etc. Order-level offers are still applied at the cart level.

    • getVariantId

      public String getVariantId()
      The id to the corresponding variant for this item.
      Returns:
      The id to the corresponding variant for this item.
    • getProductId

      public String getProductId()
      The id to the corresponding product for this item.
      Returns:
      The id to the corresponding product for this item.
    • getCategoryIds

      public Set<String> getCategoryIds()
      The ids to the corresponding categories for this item's product. Used for validating item choice configuration and offers.
      Returns:
      The ids to the corresponding categories for this item's product.
    • getProductTags

      public List<String> getProductTags()
      The list of simple labels used to categorize the corresponding product for this item.
      Returns:
      The list of simple labels used to categorize the corresponding product for this item.
    • getSku

      public String getSku()
      Represents a SKU code, similar to productId or variantId, except this is a unified, unique concept across both products and variants.
      Returns:
      The SKU (or SKU code) for a product or variant
    • getImageAsset

      public ImageAssetRef getImageAsset()
      The image asset for this item, usually sourced from the product.
      Returns:
      The image asset for this item.
    • isDiscountable

      public boolean isDiscountable()

      Whether or not this item can be applied to any offers or promotions.

      Defaults to true

      Returns:
      whether or not this item can be applied to any offers or promotions
    • getVendorRef

      public String getVendorRef()
      A reference to the corresponding vendor for this item.
      Returns:
      A reference to the corresponding vendor for this item.
    • getMerchandisingContext

      public String getMerchandisingContext()
      Defines the merchandising context of the item to signify where it is added from.

      This field is intended to be used for items added from SELECTOR products, which allows for the possibility of targeting the items for discounts based on the fact that they came from the SELECTOR product.

      Returns:
      The context of the item signifying where it's added from
    • getBrandId

      public String getBrandId()
      The id to the corresponding data driven enum for this item's product's brand. Used for validating offers.
      Returns:
      the id to the corresponding data driven enum for this item's product's brand
    • getMerchandisingTypeId

      public String getMerchandisingTypeId()
      The id to the corresponding data driven enum for this item's product's merchandising type. Used for validating offers.
      Returns:
      the id to the corresponding data driven enum for this item's product's merchandising type
    • getTargetDemographicId

      public String getTargetDemographicId()
      The id to the corresponding data driven enum for this item's product's target demographic. Used for validating offers.
      Returns:
      the id to the corresponding data driven enum for this item's product's target demographic
    • getAttributes

      public Map<String,Object> getAttributes()
      Miscellaneous attributes for this item.
      Returns:
      Miscellaneous attributes for this item.
    • getInternalAttributes

      public Map<String,Object> getInternalAttributes()
      Miscellaneous internal attributes for this item. Distinguished from getAttributes() in that this map is used for attributes that assist in the internal working of Broadleaf MicroServices. For example, attributes to help with pricing of dependent items.
      Returns:
      Miscellaneous internal attributes for this item.
    • getAttributeChoices

      public Map<String,com.broadleafcommerce.order.common.domain.AttributeChoiceValue> getAttributeChoices()
      Attribute choices for this item driven by product options, where each key is the attributeName from an attribute choice.
      Returns:
      Attribute choices for this item driven by product options, where each key is the attributeName from an attribute choice.
    • isPriced

      public boolean isPriced()
      Flag to indicate whether this item has been priced.
      Returns:
      Flag to indicate whether this item has been priced.
    • getGlobalConfigErrors

      public List<ConfigError> getGlobalConfigErrors()
      List of global configuration errors. API users and auditors can use this to see configuration errors.
      Returns:
      List of global configuration errors
    • getAttributeConfigErrors

      public Map<String,List<ConfigError>> getAttributeConfigErrors()
      Map of configuration errors for related to this item's attributeChoices that are derived from ProductOptions where the key is the attribute name.
      Returns:
      Map of configuration errors for related to this item's attributeChoices that are derived from ProductOptions where the key is the attribute name.
    • getDependentItemConfigErrors

      public Map<String,List<ConfigError>> getDependentItemConfigErrors()
      Map of configuration errors for related to this item's dependentCartItems where the key is the item's identifier such as ProductOption choiceKey.
      Returns:
      Map of configuration errors for related to this item's dependentCartItems.
    • getOverrideDetails

      public List<com.broadleafcommerce.order.common.domain.OverrideDetail> getOverrideDetails()
      List of details about any price overrides which have been performed on this item.
      Returns:
      List of details about any price overrides which have been performed on this item.
    • isTaxable

      public boolean isTaxable()
      Whether this item is taxable.
      Returns:
      Whether this item is taxable
    • getCartVersion

      public Integer getCartVersion()
      The Cart's version. Used for version checking when the cart is not part of the request. See Cart.getVersion().
    • getCart

      public Cart getCart()
      The owning cart of this item.
      Returns:
      the cart that owns this item
    • getType

      public String getType()
      The type of this cart item. See DefaultCartItemTypes.
      Returns:
      the type of this cart item
    • getContextState

      public com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState getContextState()
      A subset of Tracking information to expose the context state for this object.
      Specified by:
      getContextState in interface com.broadleafcommerce.data.tracking.core.ContextStateAware
      Returns:
      a subset of Tracking information to expose the context state for this object
    • setId

      public void setId(String id)
      The context ID of the cart.
      Parameters:
      id - the context ID of the cart
    • setName

      public void setName(String name)
      The name of this item. Typically derived from the product or sku name.
      Parameters:
      name - The name of this item. Typically derived from the product or sku name.
    • setUri

      public void setUri(String uri)
      The navigable uri of the corresponding catalog entry for this cart item.
      Parameters:
      uri - The navigable uri of the corresponding catalog entry for this cart item.
    • setQuantity

      public void setQuantity(Integer quantity)
      The number of this item in the Cart.
      Parameters:
      quantity - The number of this item in the Cart.
    • setDependentCartItems

      public void setDependentCartItems(List<CartItem> dependentCartItems)
      CartItems that depend on this CartItem. Also could be called "child items".
      Parameters:
      dependentCartItems - CartItems that depend on this CartItem. Also could be called "child items".
    • setDependentItemDetails

      public void setDependentItemDetails(DependentItemDetails dependentItemDetails)
      If this CartItem is a dependent cart item, this contains additional details about the dependent CartItem's dependency on its parent.

      This should always be populated for items within getDependentCartItems(), and should never be populated for non-dependent items.

      Parameters:
      dependentItemDetails - details about the dependent CartItem's dependency on its parent
    • setOverridePriceFlag

      public void setOverridePriceFlag(boolean overridePriceFlag)
      Whether the price of this CartItem was specifically overridden, whether from a CSR or an automatic process.
      Parameters:
      overridePriceFlag - Whether the price of this CartItem was specifically overridden, whether from a CSR or an automatic process.
    • setPriceListId

      public void setPriceListId(String priceListId)
      The id of the price list used to get the pricing for this CartItem.
      Parameters:
      priceListId - The id of the price list used to get the pricing for this CartItem.
    • setCurrency

      public void setCurrency(javax.money.CurrencyUnit currency)
      Specified by:
      setCurrency in interface com.broadleafcommerce.money.CurrencyConsumer
    • setUnitPrice

      public void setUnitPrice(javax.money.MonetaryAmount unitPrice)
      The individual unit price for a CartItem.
      Parameters:
      unitPrice - The individual unit price for a CartItem.
    • setUnitPriceType

      public void setUnitPriceType(String unitPriceType)
      The type of the unit price for a CartItem. Typically "salePrice", "standardPrice", or "basePrice".
      Parameters:
      unitPriceType - The type of the unit price for a CartItem.
    • setRecurringPriceTypeOverride

      public void setRecurringPriceTypeOverride(String recurringPriceTypeOverride)
      Overrides unitPriceType for the recurringPrice in cases where they must diverge. Usually only in Offer use cases where an offer cannot apply to a sale recurring price but can apply to the standard recurring price and we need to leave the upfront price as the sale price—or vice versa.
      Since:
      Cart Client 2.0.4
    • setRecurringPrice

      public void setRecurringPrice(com.broadleafcommerce.order.common.domain.RecurringPriceDetail recurringPrice)
      This is the recurring price if any from the same source as the unitPrice. The recurring price is used for subscriptions and is not expected to be charged at checkout typically.
      Parameters:
      recurringPrice - This is the recurring price if any from the same source as the unitPrice
      Since:
      Cart Client 2.0.4
      See Also:
      • termDurationType
      • termDurationLength
    • setUsagePrice

      public void setUsagePrice(com.broadleafcommerce.order.common.domain.UsagePriceDetail usagePrice)
      This is the usage price if any from the same source as the unitPrice. The usage price represents a charge when an item is used, e.g., when using minutes above the base allowance. This is generally just information from a Cart's perspective.
      Parameters:
      usagePrice - This is the usage price if any from the same source as the unitPrice
      Since:
      Cart Client 2.0.4
    • setTermDurationLength

      public void setTermDurationLength(Integer termDurationLength)
      The length of the terms, e.g., if this is 36 and termDurationType is MONTHS, then the recurringPrice should be charged for 36 months.
      Since:
      Cart Client 2.0.4
      See Also:
      • termDurationType
      • recurringPrice
    • setTermDurationType

      public void setTermDurationType(String termDurationType)
      The term duration type, e.g. DAYS, WEEKS, MONTHS, YEARS.
      Since:
      Cart Client 2.0.4
      See Also:
      • termDurationLength
      • recurringPrice
    • setAdjustmentsTotal

      public void setAdjustmentsTotal(javax.money.MonetaryAmount adjustmentsTotal)
      The total adjustment price for all adjustments of a CartItem.
      Parameters:
      adjustmentsTotal - The total adjustment price for all adjustments of a CartItem.
    • setSubtotal

      public void setSubtotal(javax.money.MonetaryAmount subtotal)
      The subtotal price of this CartItem. Typically calculated from getUnitPrice() * getQuantity().
      Parameters:
      subtotal - The subtotal price of this CartItem.
    • setTotal

      public void setTotal(javax.money.MonetaryAmount total)
      The total price of this CartItem. Typically calculated from getSubtotal() - getAdjustmentsTotal().
      Parameters:
      total - The total price of this CartItem.
    • setPricingStrategy

      public void setPricingStrategy(String pricingStrategy)
      For dependent cart items, this strategy is used to indicate how the price should be incorporated into the overall cart subtotal - i.e. whether this cart item's price should be added to the subtotal (the ADD_TO_PARENT strategy) or if the parent cart item's price already includes this item's price (the INCLUDED_IN_PARENT strategy). By default, the ADD_TO_PARENT strategy is used. Note: Regardless of this strategy, if the dependent cart item has a related FulfillmentItem, then there will likely be a tax amount related to the item which be included in the cart's overall price.
      Parameters:
      pricingStrategy - the pricing strategy for this item.
      See Also:
    • setPricingKey

      public void setPricingKey(String pricingKey)
      System-wide unique identifier to configure specific pricing for this cart item. Relevant if pricing data is managed in a separate system or data store, like the Broadleaf pricing services.
      Parameters:
      pricingKey - a unique key to identify this product (usually a UUID)
    • setItemAdjustments

      public void setItemAdjustments(List<com.broadleafcommerce.order.common.domain.Adjustment> itemAdjustments)
      Adjustments to item pricing that should be applied to getSubtotal().
      Parameters:
      itemAdjustments - Adjustments to item pricing that should be applied to getSubtotal().
    • setProratedOrderOfferAdjustments

      public void setProratedOrderOfferAdjustments(List<com.broadleafcommerce.order.common.domain.ProratedOfferAdjustment> proratedOrderOfferAdjustments)
      Prorated adjustments for this item from order-level offers.

      This information is only needed for downstream services for uses like refund calculation, etc. Order-level offers are still applied at the cart level.

    • setVariantId

      public void setVariantId(String variantId)
      The id to the corresponding variant for this item.
      Parameters:
      variantId - The id to the corresponding variant for this item.
    • setProductId

      public void setProductId(String productId)
      The id to the corresponding product for this item.
      Parameters:
      productId - The id to the corresponding product for this item.
    • setCategoryIds

      public void setCategoryIds(Set<String> categoryIds)
      The ids to the corresponding categories for this item's product. Used for validating item choice configuration and offers.
      Parameters:
      categoryIds - The ids to the corresponding categories for this item's product.
    • setProductTags

      public void setProductTags(List<String> productTags)
      The list of simple labels used to categorize the corresponding product for this item.
      Parameters:
      productTags - The list of simple labels used to categorize the corresponding product for this item.
    • setSku

      public void setSku(String sku)
      Represents a SKU code, similar to productId or variantId, except this is a unified, unique concept across both products and variants.
      Parameters:
      sku - The SKU (or SKU code) for a product or variant
    • setImageAsset

      public void setImageAsset(ImageAssetRef imageAsset)
      The image asset for this item, usually sourced from the product.
      Parameters:
      imageAsset - The image asset for this item.
    • setDiscountable

      public void setDiscountable(boolean discountable)

      Whether or not this item can be applied to any offers or promotions.

      Defaults to true

      Parameters:
      discountable - whether or not this item can be applied to any offers or promotions
    • setVendorRef

      public void setVendorRef(String vendorRef)
      A reference to the corresponding vendor for this item.
      Parameters:
      vendorRef - A reference to the corresponding vendor for this item.
    • setMerchandisingContext

      public void setMerchandisingContext(String merchandisingContext)
      Defines the merchandising context of the item to signify where it is added from.

      This field is intended to be used for items added from SELECTOR products, which allows for the possibility of targeting the items for discounts based on the fact that they came from the SELECTOR product.

      Parameters:
      merchandisingContext - The context of the item signifying where it's added from
    • setBrandId

      public void setBrandId(String brandId)
      The id to the corresponding data driven enum for this item's product's brand. Used for validating offers.
      Parameters:
      brandId - the id to the corresponding data driven enum for this item's product's brand
    • setMerchandisingTypeId

      public void setMerchandisingTypeId(String merchandisingTypeId)
      The id to the corresponding data driven enum for this item's product's merchandising type. Used for validating offers.
      Parameters:
      merchandisingTypeId - the id to the corresponding data driven enum for this item's product's merchandising type
    • setTargetDemographicId

      public void setTargetDemographicId(String targetDemographicId)
      The id to the corresponding data driven enum for this item's product's target demographic. Used for validating offers.
      Parameters:
      targetDemographicId - the id to the corresponding data driven enum for this item's product's target demographic
    • setAttributes

      public void setAttributes(Map<String,Object> attributes)
      Miscellaneous attributes for this item.
      Parameters:
      attributes - Miscellaneous attributes for this item.
    • setInternalAttributes

      public void setInternalAttributes(Map<String,Object> internalAttributes)
      Miscellaneous internal attributes for this item. Distinguished from getAttributes() in that this map is used for attributes that assist in the internal working of Broadleaf MicroServices. For example, attributes to help with pricing of dependent items.
      Parameters:
      internalAttributes - Miscellaneous internal attributes for this item.
    • setAttributeChoices

      public void setAttributeChoices(Map<String,com.broadleafcommerce.order.common.domain.AttributeChoiceValue> attributeChoices)
      Attribute choices for this item driven by product options, where each key is the attributeName from an attribute choice.
      Parameters:
      attributeChoices - Attribute choices for this item driven by product options, where each key is the attributeName from an attribute choice.
    • setPriced

      public void setPriced(boolean isPriced)
      Flag to indicate whether this item has been priced.
      Parameters:
      isPriced - Flag to indicate whether this item has been priced.
    • setGlobalConfigErrors

      public void setGlobalConfigErrors(List<ConfigError> globalConfigErrors)
      List of global configuration errors. API users and auditors can use this to see configuration errors.
      Parameters:
      globalConfigErrors - List of global configuration errors.
    • setAttributeConfigErrors

      public void setAttributeConfigErrors(Map<String,List<ConfigError>> attributeConfigErrors)
      Map of configuration errors for related to this item's attributeChoices that are derived from ProductOptions where the key is the attribute name.
      Parameters:
      attributeConfigErrors - Map of configuration errors for related to this item's attributeChoices that are derived from ProductOptions where the key is the attribute name.
    • setDependentItemConfigErrors

      public void setDependentItemConfigErrors(Map<String,List<ConfigError>> dependentItemConfigErrors)
      Map of configuration errors for related to this item's dependentCartItems where the key is the item's identifier such as ProductOption choiceKey.
      Parameters:
      dependentItemConfigErrors - Map of configuration errors for related to this item's dependentCartItems.
    • setOverrideDetails

      public void setOverrideDetails(List<com.broadleafcommerce.order.common.domain.OverrideDetail> overrideDetails)
      List of details about any price overrides which have been performed on this item.
      Parameters:
      overrideDetails - List of details about any price overrides which have been performed on this item.
    • setTaxable

      public void setTaxable(boolean taxable)
      Whether this item is taxable.
      Parameters:
      taxable - Whether this item is taxable
    • setCartVersion

      public void setCartVersion(Integer cartVersion)
      The Cart's version. Used for version checking when the cart is not part of the request. See Cart.getVersion().
    • setCart

      public void setCart(Cart cart)
      The owning cart of this item.
      Parameters:
      cart - the cart that should own this item
    • setType

      public void setType(String type)
      The type of this cart item. See DefaultCartItemTypes.
      Parameters:
      type - the type of the cart item
    • setContextState

      public void setContextState(com.broadleafcommerce.data.tracking.core.filtering.business.domain.ContextState contextState)
      A subset of Tracking information to expose the context state for this object.
      Specified by:
      setContextState in interface com.broadleafcommerce.data.tracking.core.ContextStateAware
      Parameters:
      contextState - a subset of Tracking information to expose the context state for this object
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • canEqual

      protected boolean canEqual(Object other)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object