示例#1
0
 /**
  * @param array|null $params
  * @param string|null $apiKey
  *
  * @return Stripe_Invoice The upcoming invoice.
  */
 public static function upcoming($params = null, $apiKey = null)
 {
     $requestor = new M2_Stripe_ApiRequestor($apiKey);
     $url = self::classUrl(get_class()) . '/upcoming';
     list($response, $apiKey) = $requestor->request('get', $url, $params);
     return M2_Stripe_Util::convertToStripeObject($response, $apiKey);
 }
示例#2
0
 public function retrieve($id, $params = null)
 {
     $requestor = new M2_Stripe_ApiRequestor($this->_apiKey);
     $base = $this['url'];
     $id = M2_Stripe_ApiRequestor::utf8($id);
     $extn = urlencode($id);
     list($response, $apiKey) = $requestor->request('get', "{$base}/{$extn}", $params);
     return M2_Stripe_Util::convertToStripeObject($response, $apiKey);
 }
示例#3
0
 protected static function _scopedCreate($class, $params = null, $apiKey = null)
 {
     self::_validateCall('create', $params, $apiKey);
     $requestor = new M2_Stripe_ApiRequestor($apiKey);
     $url = self::_scopedLsb($class, 'classUrl', $class);
     list($response, $apiKey) = $requestor->request('post', $url, $params);
     return M2_Stripe_Util::convertToStripeObject($response, $apiKey);
 }
示例#4
0
 /**
  * Refreshes this object using the provided values.
  *
  * @param array $values
  * @param string $apiKey
  * @param boolean $partial Defaults to false.
  */
 public function refreshFrom($values, $apiKey, $partial = false)
 {
     $this->_apiKey = $apiKey;
     // Wipe old state before setting new.  This is useful for e.g. updating a
     // customer, where there is no persistent card parameter.  Mark those values
     // which don't persist as transient
     if ($partial) {
         $removed = new M2_Stripe_Util_Set();
     } else {
         $removed = array_diff(array_keys($this->_values), array_keys($values));
     }
     foreach ($removed as $k) {
         if (self::$permanentAttributes->includes($k)) {
             continue;
         }
         unset($this->{$k});
     }
     foreach ($values as $k => $v) {
         if (self::$permanentAttributes->includes($k) && isset($this[$k])) {
             continue;
         }
         if (self::$nestedUpdatableAttributes->includes($k) && is_array($v)) {
             $this->_values[$k] = M2_Stripe_Object::scopedConstructFrom('M2_Stripe_AttachedObject', $v, $apiKey);
         } else {
             $this->_values[$k] = M2_Stripe_Util::convertToStripeObject($v, $apiKey);
         }
         $this->_transientValues->discard($k);
         $this->_unsavedValues->discard($k);
     }
 }