Class DefaultSapDigitalPaymentService

java.lang.Object
de.hybris.platform.cissapdigitalpayment.service.impl.DefaultSapDigitalPaymentService
All Implemented Interfaces:
SapDigitalPaymentService

public class DefaultSapDigitalPaymentService extends Object implements SapDigitalPaymentService
Default implementation of SapDigitalPaymentService
  • Constructor Details

    • DefaultSapDigitalPaymentService

      public DefaultSapDigitalPaymentService()
  • Method Details

    • getRegistrationUrl

      public DigitalPaymentsRegistrationModel getRegistrationUrl(String responseUrl)
      Description copied from interface: SapDigitalPaymentService
      Gets Digital Payments card registration URL and user will be redirected to redirectUrl after transaction is completed
      Specified by:
      getRegistrationUrl in interface SapDigitalPaymentService
      Parameters:
      responseUrl - - URL to redirect
      Returns:
      registration mode
    • poll

      public DigitalPaymentsPollModel poll(String sessionId)
      Description copied from interface: SapDigitalPaymentService
      Polls the payment card registration url and return status
      Specified by:
      poll in interface SapDigitalPaymentService
      Parameters:
      sessionId - session id of card registration
      Returns:
      poll model
    • authorize

      public PaymentTransactionEntryModel authorize(String merchantTransactionCode, String paymentProvider, AddressModel deliveryAddress, CisSapDigitalPaymentAuthorizationResult dpAuthResult)
      Description copied from interface: SapDigitalPaymentService
      Requests a payment authorization
      Specified by:
      authorize in interface SapDigitalPaymentService
      Parameters:
      merchantTransactionCode - - merchant transaction code
      paymentProvider - - payment service provider
      deliveryAddress - - delivery address
      dpAuthResult - - payment authorization result
      Returns:
      PaymentTransactionEntryModel
    • capture

      Description copied from interface: SapDigitalPaymentService
      Requests a payment capture
      Specified by:
      capture in interface SapDigitalPaymentService
      Parameters:
      transaction - - payment transaction
      Returns:
      PaymentTransactionEntryModel
      Throws:
      SapDigitalPaymentCaptureException - - Capture payment exception
    • refund

      Description copied from interface: SapDigitalPaymentService
      Requests a payment refund
      Specified by:
      refund in interface SapDigitalPaymentService
      Parameters:
      transaction - - payment transaction
      amountToRefund - - amount to refund
      Returns:
      PaymentTransactionEntryModel
      Throws:
      SapDigitalPaymentRefundException - - Payment refund exception
    • getCardRegistrationUrl

      public String getCardRegistrationUrl()
      This method will get the card registration URL from the SAP Digital payment
      Specified by:
      getCardRegistrationUrl in interface SapDigitalPaymentService
      Returns:
      registration URL
    • createPollRegisteredCardProcess

      public void createPollRegisteredCardProcess(String sessionId)
      Creates SapDigitPayPollCardProcessModel and triggers the process
      Specified by:
      createPollRegisteredCardProcess in interface SapDigitalPaymentService
      Parameters:
      sessionId - - sessionId w.r.t registered card
    • createPaymentSubscription

      public CreditCardPaymentInfoModel createPaymentSubscription(CCPaymentInfoData paymentInfoData, Map<String,Object> params)
      Creates a payment subscription and returns the CreditCardPaymentInfoModel
      Specified by:
      createPaymentSubscription in interface SapDigitalPaymentService
      Parameters:
      paymentInfoData - - credit card payment info data
      params - - pass the parameters like cart, user, payment provider etc
      Returns:
      CreditCardPaymentInfoModel
    • saveCreditCardPaymentDetailsToCart

      public boolean saveCreditCardPaymentDetailsToCart(String paymentInfoId, Map<String,Object> params)
      Saves the payment details to the cart.
      Specified by:
      saveCreditCardPaymentDetailsToCart in interface SapDigitalPaymentService
      Parameters:
      paymentInfoId - - payment info ID
      params - - Map<String,Object>
      Returns:
      Boolean
    • saveDeliveryAddressToPaymentInfoData

      protected void saveDeliveryAddressToPaymentInfoData(CCPaymentInfoData paymentInfoData, CartModel currentCart)
      Saves the delivery address to payment info
    • populateCardInfo

      protected CardInfo populateCardInfo(CCPaymentInfoData paymentInfoData)
      Populates the CardInfo
    • checkIfCurrentUserIsTheCartUser

      protected boolean checkIfCurrentUserIsTheCartUser(UserModel currentUser, CartModel currentCart)
    • isAnonymousCheckout

      protected boolean isAnonymousCheckout(UserModel currentUser)
    • getTransactionStatus

      protected String getTransactionStatus(CisSapDigitalPaymentTransactionResult transactionResult)
      Retries the transaction status
      Parameters:
      transactionResult - - CisSapDigitalPaymentTransactionResult
      Returns:
      String
    • constructAuthorizationDateTime

      protected Date constructAuthorizationDateTime(String authorizationDateTime)
      Returns the authorization date and time. In case of errors, return a new Date
    • getSubscriptionId

      protected String getSubscriptionId(CisSapDigitalPaymentSource source)
      Check for the subscription ID from the authorization response. If empty,set an empty string
    • isSapDigitalPaymentTransaction

      public boolean isSapDigitalPaymentTransaction(PaymentTransactionModel txn)
      Checks if the transaction happened with SAP Digital payment transaction
      Specified by:
      isSapDigitalPaymentTransaction in interface SapDigitalPaymentService
      Parameters:
      txn - - PaymentTransactionModel
      Returns:
      Boolean
    • pollAndSave

      public DigitalPaymentsPollModel pollAndSave(String sessionId)
      Description copied from interface: SapDigitalPaymentService
      Polls the payment card registration url and return status
      Specified by:
      pollAndSave in interface SapDigitalPaymentService
      Parameters:
      sessionId - session id of card registration
      Returns:
      poll model
    • saveCCPaymentInfo

      protected void saveCCPaymentInfo(DigitalPaymentsPollModel dpPollModel)
      Saves credit card details locally
      Parameters:
      dpPollModel - result from Digital Payments
    • getRegistrationUrl

      public DigitalPaymentsRegistrationModel getRegistrationUrl()
      Description copied from interface: SapDigitalPaymentService
      Gets Digital Payments card registration URL
      Specified by:
      getRegistrationUrl in interface SapDigitalPaymentService
      Returns:
      registration mode
    • populateCardInfo

      protected CardInfo populateCardInfo(DigitalPaymentsPollModel digitalPaymentsPollModel)
      Populates CardInfo
    • getCisSapDigitalPaymentService

      public CisSapDigitalPaymentService getCisSapDigitalPaymentService()
      Returns:
      the cisSapDigitalPaymentService
    • setCisSapDigitalPaymentService

      public void setCisSapDigitalPaymentService(CisSapDigitalPaymentService cisSapDigitalPaymentService)
      Parameters:
      cisSapDigitalPaymentService - the cisSapDigitalPaymentService to set
    • getModelService

      public de.hybris.platform.servicelayer.model.ModelService getModelService()
      Returns:
      the modelService
    • setModelService

      public void setModelService(de.hybris.platform.servicelayer.model.ModelService modelService)
      Parameters:
      modelService - the modelService to set
    • getPaymentService

      public de.hybris.platform.payment.PaymentService getPaymentService()
      Returns:
      the paymentService
    • setPaymentService

      public void setPaymentService(de.hybris.platform.payment.PaymentService paymentService)
      Parameters:
      paymentService - the paymentService to set
    • getCommonI18NService

      public de.hybris.platform.servicelayer.i18n.CommonI18NService getCommonI18NService()
      Returns:
      the commonI18NService
    • setCommonI18NService

      public void setCommonI18NService(de.hybris.platform.servicelayer.i18n.CommonI18NService commonI18NService)
      Parameters:
      commonI18NService - the commonI18NService to set
    • getPaymentFormActionUrlStrategy

      public de.hybris.platform.acceleratorservices.payment.strategies.PaymentFormActionUrlStrategy getPaymentFormActionUrlStrategy()
      Returns:
      the paymentFormActionUrlStrategy
    • setPaymentFormActionUrlStrategy

      public void setPaymentFormActionUrlStrategy(de.hybris.platform.acceleratorservices.payment.strategies.PaymentFormActionUrlStrategy paymentFormActionUrlStrategy)
      Parameters:
      paymentFormActionUrlStrategy - the paymentFormActionUrlStrategy to set
    • getBusinessProcessService

      public de.hybris.platform.processengine.BusinessProcessService getBusinessProcessService()
      Returns:
      the businessProcessService
    • setBusinessProcessService

      public void setBusinessProcessService(de.hybris.platform.processengine.BusinessProcessService businessProcessService)
      Parameters:
      businessProcessService - the businessProcessService to set
    • getCartService

      public de.hybris.platform.order.CartService getCartService()
      Returns:
      the cartService
    • setCartService

      public void setCartService(de.hybris.platform.order.CartService cartService)
      Parameters:
      cartService - the cartService to set
    • getCommerceCardTypeService

      public de.hybris.platform.commerceservices.order.CommerceCardTypeService getCommerceCardTypeService()
      Returns:
      the commerceCardTypeService
    • setCommerceCardTypeService

      public void setCommerceCardTypeService(de.hybris.platform.commerceservices.order.CommerceCardTypeService commerceCardTypeService)
      Parameters:
      commerceCardTypeService - the commerceCardTypeService to set
    • getCustomerAccountService

      public de.hybris.platform.commerceservices.customer.CustomerAccountService getCustomerAccountService()
      Returns:
      the customerAccountService
    • setCustomerAccountService

      public void setCustomerAccountService(de.hybris.platform.commerceservices.customer.CustomerAccountService customerAccountService)
      Parameters:
      customerAccountService - the customerAccountService to set
    • getCommerceCheckoutService

      public de.hybris.platform.commerceservices.order.CommerceCheckoutService getCommerceCheckoutService()
      Returns:
      the commerceCheckoutService
    • setCommerceCheckoutService

      public void setCommerceCheckoutService(de.hybris.platform.commerceservices.order.CommerceCheckoutService commerceCheckoutService)
      Parameters:
      commerceCheckoutService - the commerceCheckoutService to set
    • getAddressConverter

      public de.hybris.platform.servicelayer.dto.converter.Converter<AddressModel,AddressData> getAddressConverter()
      Returns:
      the addressConverter
    • setAddressConverter

      public void setAddressConverter(de.hybris.platform.servicelayer.dto.converter.Converter<AddressModel,AddressData> addressConverter)
      Parameters:
      addressConverter - the addressConverter to set
    • getUserService

      public de.hybris.platform.servicelayer.user.UserService getUserService()
      Returns:
      the userService
    • setUserService

      public void setUserService(de.hybris.platform.servicelayer.user.UserService userService)
      Parameters:
      userService - the userService to set
    • getBaseStoreService

      public de.hybris.platform.store.services.BaseStoreService getBaseStoreService()
      Returns:
      the baseStoreService
    • setBaseStoreService

      public void setBaseStoreService(de.hybris.platform.store.services.BaseStoreService baseStoreService)
      Parameters:
      baseStoreService - the baseStoreService to set
    • getCalculationService

      public de.hybris.platform.order.CalculationService getCalculationService()
      Returns:
      the calculationService
    • setCalculationService

      public void setCalculationService(de.hybris.platform.order.CalculationService calculationService)
      Parameters:
      calculationService - the calculationService to set
    • getSapDigiPayAuthTranResult

      public Map<String,String> getSapDigiPayAuthTranResult()
      Returns:
      the sapDigiPayAuthTranResult
    • getSapDigitalPaymentConfigurationStrategy

      public SapDigitalPaymentConfigurationStrategy getSapDigitalPaymentConfigurationStrategy()
      Returns:
      the sapDigitalPaymentConfigurationStrategy
    • setSapDigitalPaymentConfigurationStrategy

      public void setSapDigitalPaymentConfigurationStrategy(SapDigitalPaymentConfigurationStrategy sapDigitalPaymentConfigurationStrategy)
      Parameters:
      sapDigitalPaymentConfigurationStrategy - the sapDigitalPaymentConfigurationStrategy to set
    • setSapDigiPayAuthTranResult

      public void setSapDigiPayAuthTranResult(Map<String,String> sapDigiPayAuthTranResult)
      Parameters:
      sapDigiPayAuthTranResult - the sapDigiPayAuthTranResult to set
    • getDigitalPaymentsConfigurationService

      public DigitalPaymentsConfigurationService getDigitalPaymentsConfigurationService()
    • setDigitalPaymentsConfigurationService

      public void setDigitalPaymentsConfigurationService(DigitalPaymentsConfigurationService digitalPaymentsConfigurationService)
    • getEnumerationService

      public de.hybris.platform.enumeration.EnumerationService getEnumerationService()
    • setEnumerationService

      public void setEnumerationService(de.hybris.platform.enumeration.EnumerationService enumerationService)