Class DefaultSapRevenueCloudSubscriptionFacade

java.lang.Object
de.hybris.platform.subscriptionfacades.impl.AbstractSubscriptionFacade
de.hybris.platform.subscriptionfacades.impl.DefaultSubscriptionFacade
de.hybris.platform.sap.saprevenuecloudorder.facade.impl.DefaultSapRevenueCloudSubscriptionFacade
All Implemented Interfaces:
SapRevenueCloudSubscriptionFacade, de.hybris.platform.subscriptionfacades.SubscriptionFacade

public class DefaultSapRevenueCloudSubscriptionFacade extends de.hybris.platform.subscriptionfacades.impl.DefaultSubscriptionFacade implements SapRevenueCloudSubscriptionFacade
SAR RevenueCloud implementation of the SapRevenueCloudSubscriptionFacade interface and extending few methods DefaultSubscriptionFacade class.
  • Constructor Details

    • DefaultSapRevenueCloudSubscriptionFacade

      public DefaultSapRevenueCloudSubscriptionFacade()
  • Method Details

    • getSubscriptions

      @NonNull public Collection<SubscriptionData> getSubscriptions() throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Specified by:
      getSubscriptions in interface de.hybris.platform.subscriptionfacades.SubscriptionFacade
      Overrides:
      getSubscriptions in class de.hybris.platform.subscriptionfacades.impl.DefaultSubscriptionFacade
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
    • getSubscriptions

      public SearchPageData<SubscriptionData> getSubscriptions(int currentPage, int pageSize, String sort) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      Returns all subscriptions for the current user.
      Specified by:
      getSubscriptions in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      currentPage - current page
      pageSize - size of page
      sort - sorting order
      Returns:
      the current user's subscription
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer enters wrong inputs
    • getSubscription

      public SubscriptionData getSubscription(String subscriptionId) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Specified by:
      getSubscription in interface de.hybris.platform.subscriptionfacades.SubscriptionFacade
      Overrides:
      getSubscription in class de.hybris.platform.subscriptionfacades.impl.DefaultSubscriptionFacade
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
    • cancelSubscription

      public void cancelSubscription(SubscriptionData subscriptionData) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      cancel the subscription
      Specified by:
      cancelSubscription in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      subscriptionData - Subscription Data
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer enters wrong inputs
    • withdrawSubscription

      public void withdrawSubscription(SubscriptionData subscriptionData) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      withdraw the subscription
      Specified by:
      withdrawSubscription in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      subscriptionData - Subscription Data
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer enters wrong inputs
    • extendSubscription

      public SubscriptionExtensionData extendSubscription(String subscriptionId, SubscriptionExtensionFormData formData, boolean simulation) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      Extends the subscription
      Specified by:
      extendSubscription in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      subscriptionId - subscription code
      formData - subscription extension form
      simulation - simulation flag
      Returns:
      subscription extension response
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer enters wrong inputs
    • changePaymentDetailsAsCard

      public void changePaymentDetailsAsCard(SubscriptionData subscriptionData, String paymentCardId) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      Changes payment details of subscription in Revenue Cloud using token received from digital payment (in case of payment card) and external system (in case of external card)
      Specified by:
      changePaymentDetailsAsCard in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      subscriptionData - subscription data
      paymentCardId - payment card token
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer enters wrong inputs
    • changePaymentDetailsAsInvoice

      public void changePaymentDetailsAsInvoice(SubscriptionData subscriptionData) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      Changes payment details of subscription to invoice in revenue cloud
      Specified by:
      changePaymentDetailsAsInvoice in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      subscriptionData - subscription data
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer enters wrong inputs
    • computeCancellationDate

      public SubscriptionData computeCancellationDate(String subscriptionId) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      gets the effective end date upon cancellation
      Specified by:
      computeCancellationDate in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      subscriptionId - subscriptionId
      Returns:
      subscriptionData
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer enters wrong inputs
    • getSubscriptionBills

      public List<SubscriptionBillingData> getSubscriptionBills(String fromDate, String toDate) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      gets subscription bills based on customerId and dates
      Specified by:
      getSubscriptionBills in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      fromDate - starting Date for filtering bills
      toDate - end Date for filtering bills
      Returns:
      List<SubscriptionBillingData> of the current user
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer enters wrong inputs
    • getSubscriptionBillsHistory

      public SearchPageData<SubscriptionBillingData> getSubscriptionBillsHistory(String fromDate, String toDate, int currentPage, int pageSize, String sort) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      gets subscription bills based on customerId , dates , currentPage , pageSize and sort
      Specified by:
      getSubscriptionBillsHistory in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      fromDate - starting Date for filtering bills
      toDate - end Date for filtering bills
      currentPage - currentPage
      pageSize - pageSize
      sort - sort
      Returns:
      bills of the current user's subscription
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer enters wrong inputs
    • getBillDetails

      public List<SubscriptionBillingData> getBillDetails(String billId) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      get subscription bill using billId
      Specified by:
      getBillDetails in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      billId - billId
      Returns:
      bill for the billId
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer enters wrong inputs
    • getSubscriptionBillsById

      public List<SubscriptionBillingData> getSubscriptionBillsById(String billId)
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      gets subscription bill using billId
      Specified by:
      getSubscriptionBillsById in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      billId - billId
      Returns:
      bill for the billId
    • populateCardTypeName

      public void populateCardTypeName(CCPaymentInfoData paymentDetails)
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      Formats digital payments specific values for UI
      Specified by:
      populateCardTypeName in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      paymentDetails - payment card details
    • populateCardTypeName

      public void populateCardTypeName(List<CCPaymentInfoData> paymentDetailsList)
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      Formats digital payments specific values for UI
      Specified by:
      populateCardTypeName in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      paymentDetailsList - list of payment card details
    • reverseCancellation

      public void reverseCancellation(SubscriptionData subscriptionData) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      Reverses the Cancellation of subscription
      Specified by:
      reverseCancellation in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      subscriptionData - subscription details
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer enters wrong inputs
    • updateSubscription

      public void updateSubscription(SubscriptionData subscriptionData) throws de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      Updates a Subscription
      Specified by:
      updateSubscription in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      subscriptionData - subscription data
      Throws:
      de.hybris.platform.subscriptionfacades.exceptions.SubscriptionFacadeException - if customer passes wrong inputs
    • extendSubscription

      public void extendSubscription(SubscriptionData subscriptionData)
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      extends the subscription
      Specified by:
      extendSubscription in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      subscriptionData - Subscription Data
    • computeExtensionDate

      public SubscriptionData computeExtensionDate(SubscriptionData subscriptionData)
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      gets the effective end date upon extension
      Specified by:
      computeExtensionDate in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      subscriptionData - subscription data
      Returns:
      subscriptionData
    • getSubscriptionBillsByBillId

      public List<SubscriptionBillingData> getSubscriptionBillsByBillId(String billId)
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      gets subscription bill using billId
      Specified by:
      getSubscriptionBillsByBillId in interface SapRevenueCloudSubscriptionFacade
      Parameters:
      billId - billId
      Returns:
      bill for the billId
    • getCCPaymentDetails

      public List<CCPaymentInfoData> getCCPaymentDetails(boolean saved)
      Description copied from interface: SapRevenueCloudSubscriptionFacade
      Fetches current payment card details of subscription
      Specified by:
      getCCPaymentDetails in interface SapRevenueCloudSubscriptionFacade
    • getUpsellingOptionsForSubscription

      @NonNull public List<ProductData> getUpsellingOptionsForSubscription(@Nonnull String productCode)
      Specified by:
      getUpsellingOptionsForSubscription in interface de.hybris.platform.subscriptionfacades.SubscriptionFacade
      Overrides:
      getUpsellingOptionsForSubscription in class de.hybris.platform.subscriptionfacades.impl.AbstractSubscriptionFacade
    • setUserService

      public void setUserService(de.hybris.platform.servicelayer.user.UserService userService)
    • getBaseStoreService

      public de.hybris.platform.store.services.BaseStoreService getBaseStoreService()
      Overrides:
      getBaseStoreService in class de.hybris.platform.subscriptionfacades.impl.AbstractSubscriptionFacade
    • setBaseStoreService

      public void setBaseStoreService(de.hybris.platform.store.services.BaseStoreService baseStoreService)
      Overrides:
      setBaseStoreService in class de.hybris.platform.subscriptionfacades.impl.AbstractSubscriptionFacade
    • setSubscriptionSummaryConverter

      public void setSubscriptionSummaryConverter(de.hybris.platform.servicelayer.dto.converter.Converter<Subscription,SubscriptionData> subscriptionSummaryConverter)
    • setConfigurationService

      public void setConfigurationService(de.hybris.platform.servicelayer.config.ConfigurationService configurationService)
    • setSubscriptionConverter

      public void setSubscriptionConverter(de.hybris.platform.servicelayer.dto.converter.Converter<Subscription,SubscriptionData> subscriptionConverter)
    • setB2bUnitService

      public void setB2bUnitService(de.hybris.platform.b2b.services.B2BUnitService b2bUnitService)
    • setCustomerFacade

      public void setCustomerFacade(de.hybris.platform.commercefacades.customer.CustomerFacade customerFacade)
    • getSapSubscriptionExtensionConverter

      public de.hybris.platform.servicelayer.dto.converter.Converter<SubscriptionExtensionResponse,SubscriptionExtensionData> getSapSubscriptionExtensionConverter()
    • setSapSubscriptionExtensionConverter

      public void setSapSubscriptionExtensionConverter(de.hybris.platform.servicelayer.dto.converter.Converter<SubscriptionExtensionResponse,SubscriptionExtensionData> sapSubscriptionExtensionConverter)
    • getRevenueCloudConfiguration

      protected SAPRevenueCloudConfigurationModel getRevenueCloudConfiguration()
    • setSapRevenueCloudConfigurationModelGenericDao

      public void setSapRevenueCloudConfigurationModelGenericDao(de.hybris.platform.servicelayer.internal.dao.GenericDao<SAPRevenueCloudConfigurationModel> sapRevenueCloudConfigurationModelGenericDao)
    • setCardTypeMap

      public void setCardTypeMap(Map<String,String> cardTypeMap)
    • setSubscriptionService

      public void setSubscriptionService(SubscriptionService subscriptionService)
    • setBillService

      public void setBillService(BillService billService)
    • setBillItemConverter

      public void setBillItemConverter(de.hybris.platform.servicelayer.dto.converter.Converter<BillItem,SubscriptionBillingData> billItemConverter)
    • setBillSummaryConverter

      public void setBillSummaryConverter(de.hybris.platform.servicelayer.dto.converter.Converter<Bill,SubscriptionBillingData> billSummaryConverter)
    • setSubscriptionSortingOptions

      public void setSubscriptionSortingOptions(List<String> subscriptionSortingOptions)
    • setBillSortingOptions

      public void setBillSortingOptions(List<String> billSortingOptions)