35 private $sessionTransparent;
40 private $secureTokenService;
45 private $sessionManager;
69 $this->sessionTransparent = $sessionTransparent;
70 $this->secureTokenService = $secureTokenService;
71 $this->sessionManager = $sessionManager;
72 $this->transparent = $transparent;
73 parent::__construct($context);
84 $quote = $this->sessionManager->getQuote();
87 return $this->getErrorResponse();
90 $this->sessionTransparent->setQuoteId(
$quote->getId());
92 $token = $this->secureTokenService->requestToken(
$quote);
93 if (!
$token->getData(
'securetoken')) {
94 throw new \LogicException();
97 return $this->resultJsonFactory->create()->setData(
99 $this->transparent->getCode() => [
'fields' =>
$token->getData()],
104 }
catch (\Exception $e) {
105 return $this->getErrorResponse();
112 private function getErrorResponse()
114 return $this->resultJsonFactory->create()->setData(
118 'error_messages' =>
__(
'Your payment has been declined. Please try again.')
__construct(Context $context, JsonFactory $resultJsonFactory, Generic $sessionTransparent, SecureToken $secureTokenService, SessionManager $sessionManager, Transparent $transparent)