Class PriceDataTier

  • All Implemented Interfaces:
    com.broadleafcommerce.data.tracking.core.EmbeddedContextStateAware, Serializable, Comparable<PriceDataTier>

    public class PriceDataTier
    extends Object
    implements Serializable, Comparable<PriceDataTier>, com.broadleafcommerce.data.tracking.core.EmbeddedContextStateAware
    Specify a price depending on a minimum quantity being met. i.e. "Sku A" gets a reduced price if you buy 5 of them, and a further reduced price if you buy 10.
    Author:
    Chad Harchar (charchar)
    See Also:
    Serialized Form
    • Field Summary

      • Fields inherited from interface com.broadleafcommerce.data.tracking.core.EmbeddedContextStateAware

        DEFAULT_FIELD_NAME
    • Constructor Summary

      Constructors 
      Constructor Description
      PriceDataTier()  
      PriceDataTier​(Integer minQuantity, javax.money.MonetaryAmount price, com.broadleafcommerce.data.tracking.core.EmbeddedContextState contextState)  
    • Constructor Detail

      • PriceDataTier

        public PriceDataTier​(Integer minQuantity,
                             javax.money.MonetaryAmount price,
                             com.broadleafcommerce.data.tracking.core.EmbeddedContextState contextState)
      • PriceDataTier

        public PriceDataTier()
    • Method Detail

      • compareTo

        public int compareTo​(@NonNull
                             PriceDataTier that)
        Compares priorities. Null is less than non-null.
        Specified by:
        compareTo in interface Comparable<PriceDataTier>
        Parameters:
        that - PriceDataTier to which we are comparing
        Returns:
        a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object.
      • getMinQuantity

        public Integer getMinQuantity()
        The quantity that defines the minimum threshold of this tier.
      • getPrice

        public javax.money.MonetaryAmount getPrice()
        The price for targets items when this tier is met.
      • getContextState

        public com.broadleafcommerce.data.tracking.core.EmbeddedContextState getContextState()
        A subset of Tracking information to expose the context state for this object. This value is not persisted, and instead it is dynamically calculated and populated when the ChangeDetails for the parent object's entire attributes map are compared.
        Specified by:
        getContextState in interface com.broadleafcommerce.data.tracking.core.EmbeddedContextStateAware
        Returns:
        a subset of Tracking information to expose the context state for this object
      • setMinQuantity

        public void setMinQuantity​(Integer minQuantity)
        The quantity that defines the minimum threshold of this tier.
      • setPrice

        public void setPrice​(javax.money.MonetaryAmount price)
        The price for targets items when this tier is met.
      • setContextState

        public void setContextState​(com.broadleafcommerce.data.tracking.core.EmbeddedContextState contextState)
        A subset of Tracking information to expose the context state for this object. This value is not persisted, and instead it is dynamically calculated and populated when the ChangeDetails for the parent object's entire attributes map are compared.
        Specified by:
        setContextState in interface com.broadleafcommerce.data.tracking.core.EmbeddedContextStateAware
        Parameters:
        contextState - a subset of Tracking information to expose the context state for this object
      • canEqual

        protected boolean canEqual​(Object other)
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object