![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/cartforge.co/vendor/paypal/module-braintree-core/Gateway/Helper/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace PayPal\Braintree\Gateway\Helper; use Braintree\Transaction; use InvalidArgumentException; use Magento\Quote\Model\Quote; use Magento\Payment\Gateway\Helper; use Magento\Vault\Api\Data\PaymentTokenInterface; use Magento\Payment\Gateway\Data\PaymentDataObjectInterface; class SubjectReader { /** * Reads response object from subject * * @param array $subject * @return object */ public function readResponseObject(array $subject) { $response = Helper\SubjectReader::readResponse($subject); if (!isset($response['object']) || !is_object($response['object'])) { throw new InvalidArgumentException('Response object does not exist'); } return $response['object']; } /** * Reads payment from subject * * @param array $subject * @return PaymentDataObjectInterface */ public function readPayment(array $subject): PaymentDataObjectInterface { return Helper\SubjectReader::readPayment($subject); } /** * Reads transaction from subject * * @param array $subject * @return Transaction */ public function readTransaction(array $subject): Transaction { if (!isset($subject['object']) || !is_object($subject['object'])) { throw new InvalidArgumentException('Response object does not exist'); } if (!isset($subject['object']->transaction) && !$subject['object']->transaction instanceof Transaction ) { throw new InvalidArgumentException('The object is not a class \Braintree\Transaction.'); } return $subject['object']->transaction; } /** * Reads amount from subject * * @param array $subject * @return mixed */ public function readAmount(array $subject) { return Helper\SubjectReader::readAmount($subject); } /** * Reads customer id from subject * * @param array $subject * @return int */ public function readCustomerId(array $subject): int { if (!isset($subject['customer_id'])) { throw new InvalidArgumentException('The "customerId" field does not exists'); } return (int) $subject['customer_id']; } /** * Reads public hash from subject * * @param array $subject * @return string */ public function readPublicHash(array $subject): string { if (empty($subject[PaymentTokenInterface::PUBLIC_HASH])) { throw new InvalidArgumentException('The "public_hash" field does not exists'); } return $subject[PaymentTokenInterface::PUBLIC_HASH]; } /** * Reads PayPal details from transaction object * * @param Transaction $transaction * @return array */ public function readPayPal(Transaction $transaction): array { if (!isset($transaction->paypal)) { throw new InvalidArgumentException(__('Transaction has not paypal attribute')); } return $transaction->paypal; } /** * Reads Local Payment details from transaction object * * @param Transaction $transaction * @return array */ public function readLocalPayment(Transaction $transaction): array { if (!isset($transaction->localPayment)) { throw new InvalidArgumentException(__('Transaction has not localPayment attribute')); } return $transaction->localPayment; } }