Class ExistingSubscriptionDetails

java.lang.Object
com.broadleafcommerce.cartoperation.domain.subscription.ExistingSubscriptionDetails
All Implemented Interfaces:
Serializable

public class ExistingSubscriptionDetails extends Object implements Serializable
Contains details describing an existing subscription when entering a modify-subscription flow such as for edit, upgrade, or downgrade. This is stored on the created Cart for use by downstream systems.
Since:
Cart Operation Service 2.3.0, Release Train 2.3.0
See Also:
  • Constructor Details

    • ExistingSubscriptionDetails

      public ExistingSubscriptionDetails()
  • Method Details

    • getAllAdjustmentDetails

      public List<ExistingAdjustmentDetail> getAllAdjustmentDetails()
      Gets both subscription-level and item-level existing adjustment details.
    • getSubscriptionId

      public String getSubscriptionId()
      The id of the subscription
    • getRootSubscriptionItemId

      public String getRootSubscriptionItemId()
      ID of the root subscription item.
    • getCurrentPeriod

      public Integer getCurrentPeriod()
      The subscription's current period
    • 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. MONTHLY, QUARTERLY, ANNUALLY
      See Also:
      • periodFrequency
    • getPaymentStrategy

      public String getPaymentStrategy()
      Declares that payments made against a subscription are going towards the goods/services rendered in the previous vs current period.
      See Also:
      • DefaultSubscriptionPaymentStrategy
    • getDelayedActions

      public List<DelayedSubscriptionAction> getDelayedActions()
      List of delayed actions for this subscription.

      Often, these delayed actions are related to requested actions against a subscription with a PREPAID payment strategy where instead of refunding the customer, the action is delayed until the end of the period, causing the next period to naturally identify the updated price.

    • getEndOfTermDate

      public Instant getEndOfTermDate()
      Stores the time at which the current subscription's ends.

      For terms, this points to the time at which the current term ends.

    • getExistingItemDetails

      public List<ExistingSubscriptionItemDetail> getExistingItemDetails()
      ExistingSubscriptionItemDetail for each subscription item on the existing subscription.
    • getExistingAdjustmentDetails

      public List<ExistingSubscriptionAdjustmentDetail> getExistingAdjustmentDetails()
      Details describing existing subscription-level adjustments.
    • getAttributes

      public Map<String,Object> getAttributes()
      Additional attributes to include.
    • setSubscriptionId

      public void setSubscriptionId(String subscriptionId)
      The id of the subscription
    • setRootSubscriptionItemId

      public void setRootSubscriptionItemId(String rootSubscriptionItemId)
      ID of the root subscription item.
    • setCurrentPeriod

      public void setCurrentPeriod(Integer currentPeriod)
      The subscription's current period
    • 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. MONTHLY, QUARTERLY, ANNUALLY
      See Also:
      • periodFrequency
    • setPaymentStrategy

      public void setPaymentStrategy(String paymentStrategy)
      Declares that payments made against a subscription are going towards the goods/services rendered in the previous vs current period.
      See Also:
      • DefaultSubscriptionPaymentStrategy
    • setDelayedActions

      public void setDelayedActions(List<DelayedSubscriptionAction> delayedActions)
      List of delayed actions for this subscription.

      Often, these delayed actions are related to requested actions against a subscription with a PREPAID payment strategy where instead of refunding the customer, the action is delayed until the end of the period, causing the next period to naturally identify the updated price.

    • setEndOfTermDate

      public void setEndOfTermDate(Instant endOfTermDate)
      Stores the time at which the current subscription's ends.

      For terms, this points to the time at which the current term ends.

    • setExistingItemDetails

      public void setExistingItemDetails(List<ExistingSubscriptionItemDetail> existingItemDetails)
      ExistingSubscriptionItemDetail for each subscription item on the existing subscription.
    • setExistingAdjustmentDetails

      public void setExistingAdjustmentDetails(List<ExistingSubscriptionAdjustmentDetail> existingAdjustmentDetails)
      Details describing existing subscription-level adjustments.
    • setAttributes

      public void setAttributes(Map<String,Object> attributes)
      Additional attributes to include.
    • 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