Class DefaultSubscriptionService
java.lang.Object
de.hybris.platform.sap.saprevenuecloudorder.service.impl.DefaultSubscriptionService
- All Implemented Interfaces:
SubscriptionService
Default Subscription Service to communicate with Sap Subscription Billing system
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncancelSubscription(String subscriptionId, CancellationRequest cancellationForm) cancel a subscription based on subscription codecomputeCancellationDate(String subscriptionId, String reqCancellationDate) get effective end date for subscriptionextendSubscription(String subscriptionId, ExtensionRequest extensionForm, boolean simulate) extend a subscription based on subscription codegetBillingFrequency(ProductModel productModel) get billingFrequency for specific productgetSubscription(String subscriptionId) fetch subscription details using subscriptionIdgetSubscriptionsByClientId(String clientId) fetch subscription details using customerIdgetSubscriptionsByClientIdPage(String clientId, Integer pageIdx, Integer pageSize, String sort) fetch subscription details with PaginationreverseCancellation(String subscriptionId, CancellationReversalRequest cancellationReversalForm) Reverses the cancellation of subscriptionvoidsetSbApiClient(SubscriptionBillingApiClient sbApiClient) voidsetUserService(de.hybris.platform.servicelayer.user.UserService userService) updatePayment(String subscriptionId, PaymentRequest paymentDetailsForm) Makes service call to change payment details of provided subscription codewithdrawSubscription(String subscriptionId, WithdrawalRequest withdrawalForm) withdraw a subscription based on subscription code
-
Constructor Details
-
DefaultSubscriptionService
public DefaultSubscriptionService()
-
-
Method Details
-
getSubscriptionsByClientId
public List<Subscription> getSubscriptionsByClientId(String clientId) throws de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException Description copied from interface:SubscriptionServicefetch subscription details using customerId- Specified by:
getSubscriptionsByClientIdin interfaceSubscriptionService- Parameters:
clientId- customerId- Returns:
Listlist ofSubscription- Throws:
de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException- if error occurs due to input data
-
getSubscriptionsByClientIdPage
public PaginationResult<List<Subscription>> getSubscriptionsByClientIdPage(String clientId, Integer pageIdx, Integer pageSize, String sort) throws de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException Description copied from interface:SubscriptionServicefetch subscription details with Pagination- Specified by:
getSubscriptionsByClientIdPagein interfaceSubscriptionService- Parameters:
clientId- customerIdpageIdx- pageNumberpageSize- pageSizesort- Sorting Order- Returns:
- single page of
Subscription - Throws:
de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException- if error occurs due to input data
-
getSubscription
public Subscription getSubscription(String subscriptionId) throws de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException Description copied from interface:SubscriptionServicefetch subscription details using subscriptionId- Specified by:
getSubscriptionin interfaceSubscriptionService- Parameters:
subscriptionId- subscription code- Returns:
Subscription- Throws:
de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException- if error occurs due to input data
-
cancelSubscription
public CancellationResponse cancelSubscription(String subscriptionId, CancellationRequest cancellationForm) throws de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException Description copied from interface:SubscriptionServicecancel a subscription based on subscription code- Specified by:
cancelSubscriptionin interfaceSubscriptionService- Parameters:
subscriptionId- subscription codecancellationForm- subscription data required for cancellation- Returns:
- Response of cancelled subscription
- Throws:
de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException- if error occurs due to input data
-
withdrawSubscription
public WithdrawalResponse withdrawSubscription(String subscriptionId, WithdrawalRequest withdrawalForm) throws de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException Description copied from interface:SubscriptionServicewithdraw a subscription based on subscription code- Specified by:
withdrawSubscriptionin interfaceSubscriptionService- Parameters:
subscriptionId- subscription codewithdrawalForm- subscription data required for Withdrawal- Returns:
- Response of withdrawn subscription
- Throws:
de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException- if error occurs due to input data
-
updatePayment
public PaymentResponse updatePayment(String subscriptionId, PaymentRequest paymentDetailsForm) throws de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException Description copied from interface:SubscriptionServiceMakes service call to change payment details of provided subscription code- Specified by:
updatePaymentin interfaceSubscriptionService- Parameters:
subscriptionId- Subscription Id for which payment details needs to be changedpaymentDetailsForm- Payment details that is to be updated- Returns:
- result of Payment update
- Throws:
de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException- if error occurs due to input data
-
getBillingFrequency
Description copied from interface:SubscriptionServiceget billingFrequency for specific product- Specified by:
getBillingFrequencyin interfaceSubscriptionService- Parameters:
productModel- - product model- Returns:
BillingFrequencyModel
-
computeCancellationDate
public EffectiveExpirationDate computeCancellationDate(String subscriptionId, String reqCancellationDate) throws de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException Description copied from interface:SubscriptionServiceget effective end date for subscription- Specified by:
computeCancellationDatein interfaceSubscriptionService- Parameters:
subscriptionId- subscription codereqCancellationDate- requested cancellation date- Returns:
- effective end date for subscription
- Throws:
de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException- if error occurs due to input data
-
extendSubscription
public ExtensionResponse extendSubscription(String subscriptionId, ExtensionRequest extensionForm, boolean simulate) throws de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException Description copied from interface:SubscriptionServiceextend a subscription based on subscription code- Specified by:
extendSubscriptionin interfaceSubscriptionService- Parameters:
subscriptionId- subscriptionIdextensionForm- subscription data required for extending subscriptionsimulate- simulation flag (Data will simulate but won't persist)- Returns:
- extension status
- Throws:
de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException- if error occurs due to input data
-
reverseCancellation
public CancellationReversalResponse reverseCancellation(String subscriptionId, CancellationReversalRequest cancellationReversalForm) throws de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException Description copied from interface:SubscriptionServiceReverses the cancellation of subscription- Specified by:
reverseCancellationin interfaceSubscriptionService- Parameters:
subscriptionId- subscription idcancellationReversalForm- Cancellation Reversal- Returns:
- Cancellation Reversal Response
- Throws:
de.hybris.platform.subscriptionservices.exception.SubscriptionServiceException- if error occurs due to input data
-
setSbApiClient
-
setUserService
public void setUserService(de.hybris.platform.servicelayer.user.UserService userService)
-