33 private $coreRegistry;
43 private $responseValidator;
48 private $resultLayoutFactory;
58 private $paymentFailures;
63 private $sessionTransparent;
84 Session $sessionTransparent =
null,
87 parent::__construct($context);
88 $this->coreRegistry = $coreRegistry;
90 $this->responseValidator = $responseValidator;
91 $this->resultLayoutFactory = $resultLayoutFactory;
92 $this->transparent = $transparent;
93 $this->sessionTransparent = $sessionTransparent ?: $this->_objectManager->get(Session::class);
94 $this->paymentFailures = $paymentFailures ?: $this->_objectManager->get(PaymentFailuresInterface::class);
122 $this->responseValidator->validate(
$response, $this->transparent);
123 $this->transaction->savePaymentInQuote(
$response);
125 $parameters[
'error'] =
true;
126 $parameters[
'error_msg'] = $exception->getMessage();
127 $this->paymentFailures->handle((
int)$this->sessionTransparent->getQuoteId(), $parameters[
'error_msg']);
132 $resultLayout = $this->resultLayoutFactory->create();
133 $resultLayout->addDefaultHandle();
134 $resultLayout->getLayout()->getUpdate()->load([
'transparent_payment_response']);
136 return $resultLayout;
createCsrfValidationException(RequestInterface $request)
validateForCsrf(RequestInterface $request)
__construct(Context $context, Registry $coreRegistry, Transaction $transaction, ResponseValidator $responseValidator, LayoutFactory $resultLayoutFactory, Transparent $transparent, Session $sessionTransparent=null, PaymentFailuresInterface $paymentFailures=null)