dolibarr/htdocs/includes/stripe/stripe-php/lib/SingletonApiResource.php

39 lines
917 B
PHP
Raw Normal View History

2017-04-18 05:44:08 +02:00
<?php
namespace Stripe;
/**
2021-01-03 23:37:44 +01:00
* Class SingletonApiResource.
2017-04-18 05:44:08 +02:00
*/
abstract class SingletonApiResource extends ApiResource
{
protected static function _singletonRetrieve($options = null)
{
$opts = Util\RequestOptions::parse($options);
$instance = new static(null, $opts);
$instance->refresh();
2021-01-03 23:37:44 +01:00
2017-04-18 05:44:08 +02:00
return $instance;
}
/**
2021-01-03 23:37:44 +01:00
* @return string the endpoint associated with this singleton class
2017-04-18 05:44:08 +02:00
*/
public static function classUrl()
{
2019-05-03 02:22:27 +02:00
// Replace dots with slashes for namespaced resources, e.g. if the object's name is
// "foo.bar", then its URL will be "/v1/foo/bar".
2021-01-03 23:37:44 +01:00
$base = \str_replace('.', '/', static::OBJECT_NAME);
return "/v1/{$base}";
2017-04-18 05:44:08 +02:00
}
/**
2021-01-03 23:37:44 +01:00
* @return string the endpoint associated with this singleton API resource
2017-04-18 05:44:08 +02:00
*/
public function instanceUrl()
{
return static::classUrl();
}
}