Class SopPaymentResponseController

All Implemented Interfaces:
CheckoutStepController

@Controller @RequestMapping("/checkout/multi/sop") public class SopPaymentResponseController extends PaymentMethodCheckoutStepController
Silent Order Post (SOP) controller.
  • Constructor Details

    • SopPaymentResponseController

      public SopPaymentResponseController()
  • Method Details

    • doHandleSopResponse

      @RequestMapping(value="/response", method=POST) public String doHandleSopResponse(javax.servlet.http.HttpServletRequest request, @Valid @Valid SopPaymentDetailsForm sopPaymentDetailsForm, org.springframework.validation.BindingResult bindingResult, org.springframework.ui.Model model, org.springframework.web.servlet.mvc.support.RedirectAttributes redirectAttributes) throws de.hybris.platform.cms2.exceptions.CMSItemNotFoundException
      Handle SOP response.
      Parameters:
      request -
      sopPaymentDetailsForm -
      bindingResult -
      model -
      redirectAttributes -
      Returns:
      the view for the next step in the checkout process, determined by ( PaymentMethodCheckoutStepController.enterStep(Model, RedirectAttributes)
      Throws:
      de.hybris.platform.cms2.exceptions.CMSItemNotFoundException
    • updateMerchantPaymentMethod

      protected CCPaymentInfoData updateMerchantPaymentMethod(CCPaymentInfoData paymentInfo, Map<String,String> map)
      Update the Merchant Payment Method ID on the current paymentInfo.
      Parameters:
      map - the parameter map from the SOP response
      paymentInfo - the currently active paymentInfo data object.
      Returns:
      an updated paymentInfo object, or null if the update fails.
    • subscriptionFinalizeTransaction

      protected SubscriptionPaymentData subscriptionFinalizeTransaction(CCPaymentInfoData newPaymentSubscription)
      Finalize the Subscription Transaction.
      Parameters:
      sopPaymentDetailsForm -
      newPaymentSubscription -
      Returns:
      the new SubscriptionPaymentData, or null if this method fails.
    • getCountryAddressForm

      @RequestMapping(value="/billingaddressform", method=GET) public String getCountryAddressForm(@RequestParam("countryIsoCode") String countryIsoCode, @RequestParam("useDeliveryAddress") boolean useDeliveryAddress, org.springframework.ui.Model model)
      Populate data for, and display the Billing address form.
      Parameters:
      countryIsoCode -
      useDeliveryAddress -
      model -
      Returns:
      The billing address form view.
    • createPaymentDetailsMap

      protected Map<String,String> createPaymentDetailsMap(CCPaymentInfoData payInfo)
    • maskAccountNumber

      protected String maskAccountNumber(String accountNumber)