관리-도구
편집 파일: FuturePayment.php
<?php namespace PayPal\Api; use PayPal\Rest\ApiContext; use PayPal\Transport\PayPalRestCall; /** * Class FuturePayment * * @package PayPal\Api */ class FuturePayment extends Payment { /** * Extends the Payment object to create future payments * * @param null $apiContext * @param string|null $clientMetadataId * @return $this */ public function create($apiContext = null, $clientMetadataId = null) { if ($apiContext == null) { $apiContext = new ApiContext(self::$credential); } $headers = array(); if ($clientMetadataId != null) { $headers = array( 'PAYPAL-CLIENT-METADATA-ID' => $clientMetadataId ); } $payLoad = $this->toJSON(); $call = new PayPalRestCall($apiContext); $json = $call->execute( array('PayPal\Handler\RestHandler'), "/v1/payments/payment", "POST", $payLoad, $headers ); $this->fromJson($json); return $this; } /** * Get a Refresh Token from Authorization Code * * @param $authorizationCode * @param ApiContext $apiContext * @return string|null refresh token */ public static function getRefreshToken($authorizationCode, $apiContext = null) { $apiContext = $apiContext ? $apiContext : new ApiContext(self::$credential); $credential = $apiContext->getCredential(); return $credential->getRefreshToken($apiContext->getConfig(), $authorizationCode); } /** * Updates Access Token using long lived refresh token * * @param string|null $refreshToken * @param ApiContext $apiContext * @return void */ public function updateAccessToken($refreshToken, $apiContext) { $apiContext = $apiContext ? $apiContext : new ApiContext(self::$credential); $apiContext->getCredential()->updateAccessToken($apiContext->getConfig(), $refreshToken); } }