Class RecurringPriceDetail
java.lang.Object
com.broadleafcommerce.promotion.offer.client.web.context.RecurringPriceDetail
- All Implemented Interfaces:
Serializable
Represents the details related to a recurring (or subscription) price include the terms.
- Since:
- Offer Client 2.0.2
- Author:
- Nathan Moore (nathandmoore)
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected booleanbooleanintReturns the maximum number of periods possible in a year based on theperiodType.intDetermines the maximum number of periods to recur during, normalized to a period type of "YEARLY".intThe frequency with which the recurringpriceshould be charged., e.g., a value of 1 combined withperiodTypeof MONTH would indicate to a subscription service that thepriceshould be charged every 1 month.Defines the number of periods the price should recur.The period type for the price, e.g.javax.money.MonetaryAmountgetPrice()The amount of the recurring price.protected intDetermines the factor when trying to determine the number of periods to use in discount calculations in order to normalize the term duration into the number of periods in terms of years.The length of the terms, e.g., if this is 36 andtermDurationTypeis MONTHS, then thepriceshould be charged for 36 months.The term duration type, e.g.inthashCode()voidsetPeriodFrequency(int periodFrequency) The frequency with which the recurringpriceshould be charged., e.g., a value of 1 combined withperiodTypeof MONTH would indicate to a subscription service that thepriceshould be charged every 1 month.voidsetPeriodLimit(Integer periodLimit) Defines the number of periods the price should recur.voidsetPeriodType(String periodType) The period type for the price, e.g.voidsetPrice(javax.money.MonetaryAmount price) The amount of the recurring price.voidsetTermDurationLength(Integer termDurationLength) The length of the terms, e.g., if this is 36 andtermDurationTypeis MONTHS, then thepriceshould be charged for 36 months.voidsetTermDurationType(String termDurationType) The term duration type, e.g.toString()
-
Constructor Details
-
RecurringPriceDetail
public RecurringPriceDetail()
-
-
Method Details
-
getNumberOfPeriodsInAYear
public int getNumberOfPeriodsInAYear()Determines the maximum number of periods to recur during, normalized to a period type of "YEARLY". A value of0indicates no limit.- Returns:
- The maximum number of periods to recur during, normalized to a period type of
"YEARLY". A value of
0indicates no limit. - Since:
- Offer Client 2.0.2
-
getMaxPeriodsInAYear
public int getMaxPeriodsInAYear()Returns the maximum number of periods possible in a year based on theperiodType.- Returns:
- The maximum number of periods possible in a year based on the
periodType.
-
getRecurringPeriodNormalizationFactor
protected int getRecurringPeriodNormalizationFactor()Determines the factor when trying to determine the number of periods to use in discount calculations in order to normalize the term duration into the number of periods in terms of years.- Returns:
- The normalization factor
-
getPrice
public javax.money.MonetaryAmount getPrice()The amount of the recurring price. -
getPeriodFrequency
public int getPeriodFrequency()The frequency with which the recurringpriceshould be charged., e.g., a value of 1 combined withperiodTypeof MONTH would indicate to a subscription service that thepriceshould be charged every 1 month.- See Also:
-
periodType
-
getPeriodType
The period type for the price, e.g. DAY, MONTH, YEAR- See Also:
-
periodFrequency
-
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:
-
periodFrequencyperiodType
-
getTermDurationLength
The length of the terms, e.g., if this is 36 andtermDurationTypeis MONTHS, then thepriceshould be charged for 36 months.- See Also:
-
termDurationType
-
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 recurringpriceshould be charged., e.g., a value of 1 combined withperiodTypeof MONTH would indicate to a subscription service that thepriceshould be charged every 1 month.- See Also:
-
periodType
-
setPeriodType
The period type for the price, e.g. DAY, MONTH, YEAR- See Also:
-
periodFrequency
-
setPeriodLimit
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:
-
periodFrequencyperiodType
-
setTermDurationLength
The length of the terms, e.g., if this is 36 andtermDurationTypeis MONTHS, then thepriceshould be charged for 36 months.- See Also:
-
termDurationType
-
setTermDurationType
The term duration type, e.g. DAYS, WEEKS, MONTHS, YEARS.- See Also:
-
termDurationLength
-
equals
-
canEqual
-
hashCode
public int hashCode() -
toString
-