64 private $additionalChecks;
74 private $jsonValidator;
103 array $additionalChecks = [],
108 $this->additionalChecks = $additionalChecks;
145 $this->setQuoteId(
$quote->getId());
173 $data = new \Magento\Framework\DataObject(
$data);
174 $this->_eventManager->dispatch(
175 $this->_eventPrefix .
'_import_data_before',
176 [$this->_eventObject => $this,
'input' =>
$data]
189 $checks = array_merge(
$data->getChecks(), $this->additionalChecks);
190 $methodSpecification = $this->methodSpecificationFactory->create($checks);
192 throw new \Magento\Framework\Exception\LocalizedException(
193 __(
'The requested Payment Method is not available.')
212 private function convertPaymentData(array $rawData)
221 foreach (array_keys($rawData) as $requestKey) {
222 if (!array_key_exists($requestKey, $paymentData)) {
227 (array) $rawData[$requestKey]
230 $paymentData[$requestKey] = $rawData[$requestKey];
247 return parent::beforeSave();
259 return $method->getCheckoutRedirectUrl();
273 return $method->getConfigData(
'order_place_redirect_url');
285 $method = parent::getMethodInstance();
301 return $this->
getData(self::KEY_PO_NUMBER);
312 return $this->
setData(self::KEY_PO_NUMBER, $poNumber);
322 return $this->
getData(self::KEY_METHOD);
343 $additionalDataValue = $this->
getData(self::KEY_ADDITIONAL_DATA);
344 if (is_array($additionalDataValue)) {
345 return $additionalDataValue;
347 if (is_string($additionalDataValue) && $this->jsonValidator->isValid($additionalDataValue)) {
348 $additionalData = $this->serializer->unserialize($additionalDataValue);
349 if (is_array($additionalData)) {
350 return $additionalData;
364 return $this->
setData(self::KEY_ADDITIONAL_DATA, $additionalData);
_getExtensionAttributes()
elseif(isset( $params[ 'redirect_parent']))
__construct(\Magento\Framework\Model\Context $context, \Magento\Framework\Registry $registry, \Magento\Framework\Api\ExtensionAttributesFactory $extensionFactory, \Magento\Framework\Api\AttributeValueFactory $customAttributeFactory, \Magento\Payment\Helper\Data $paymentData, \Magento\Framework\Encryption\EncryptorInterface $encryptor, \Magento\Payment\Model\Checks\SpecificationFactory $methodSpecificationFactory, \Magento\Framework\Model\ResourceModel\AbstractResource $resource=null, \Magento\Framework\Data\Collection\AbstractDb $resourceCollection=null, array $data=[], array $additionalChecks=[], \Magento\Framework\Serialize\Serializer\Json $serializer=null, \Magento\Framework\Serialize\JsonValidator $jsonValidator=null)
_setExtensionAttributes(\Magento\Framework\Api\ExtensionAttributesInterface $extensionAttributes)
getData($key='', $index=null)
const KEY_ADDITIONAL_DATA
setExtensionAttributes(\Magento\Quote\Api\Data\PaymentExtensionInterface $extensionAttributes)
setAdditionalData($additionalData)
getOrderPlaceRedirectUrl()
$methodSpecificationFactory
setQuote(\Magento\Quote\Model\Quote $quote)
setData($key, $value=null)