Class RecurringPriceDetail

java.lang.Object
com.broadleafcommerce.pricing.client.domain.RecurringPriceDetail
All Implemented Interfaces:
Serializable, Comparable<RecurringPriceDetail>

public class RecurringPriceDetail extends Object implements Comparable<RecurringPriceDetail>, Serializable
Represents the details related to a recurring (or subscription) price include the terms.
Since:
Pricing Client 2.0.3
Author:
Nathan Moore (nathandmoore)
See Also:
  • Constructor Details

    • RecurringPriceDetail

      public RecurringPriceDetail()
  • Method Details

    • compareTo

      public int compareTo(@Nullable RecurringPriceDetail o)
      Specified by:
      compareTo in interface Comparable<RecurringPriceDetail>
    • getPrice

      public javax.money.MonetaryAmount getPrice()
      The amount of the recurring price.
    • getPeriodFrequency

      public int getPeriodFrequency()
      The frequency with which the recurring price should be charged., e.g., a value of 1 combined with periodType of MONTH would indicate to a subscription service that the price should be charged every 1 month.
      See Also:
      • periodType
    • getPeriodType

      public String getPeriodType()
      The period type for the price, e.g. DAY, MONTH, YEAR
      See Also:
      • periodFrequency
    • getPeriodLimit

      public Integer getPeriodLimit()
      Defines the number of periods the price should recur. Only applicable for non-standard price lists, particularly sales where a discount may be applied for the first 'n' periods after which the price reverts to a standard price list's.
      See Also:
      • periodFrequency
      • periodType
    • getTermDurationLength

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

      public String getTermDurationType()
      The term duration type, e.g. DAYS, WEEKS, MONTHS, YEARS.
      See Also:
      • termDurationLength
    • setPrice

      public void setPrice(javax.money.MonetaryAmount price)
      The amount of the recurring price.
    • setPeriodFrequency

      public void setPeriodFrequency(int periodFrequency)
      The frequency with which the recurring price should be charged., e.g., a value of 1 combined with periodType of MONTH would indicate to a subscription service that the price should be charged every 1 month.
      See Also:
      • periodType
    • setPeriodType

      public void setPeriodType(String periodType)
      The period type for the price, e.g. DAY, MONTH, YEAR
      See Also:
      • periodFrequency
    • setPeriodLimit

      public void setPeriodLimit(Integer periodLimit)
      Defines the number of periods the price should recur. Only applicable for non-standard price lists, particularly sales where a discount may be applied for the first 'n' periods after which the price reverts to a standard price list's.
      See Also:
      • periodFrequency
      • periodType
    • setTermDurationLength

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

      public void setTermDurationType(String termDurationType)
      The term duration type, e.g. DAYS, WEEKS, MONTHS, YEARS.
      See Also:
      • termDurationLength
    • 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