stripe-ruby/lib/stripe/singleton_api_resource.rb
2018-07-19 14:23:07 +02:00

25 lines
721 B
Ruby

# frozen_string_literal: true
module Stripe
class SingletonAPIResource < APIResource
def self.resource_url
if self == SingletonAPIResource
raise NotImplementedError, "SingletonAPIResource is an abstract class. You should perform actions on its subclasses (Account, etc.)"
end
# Namespaces are separated in object names with periods (.) and in URLs
# with forward slashes (/), so replace the former with the latter.
"/v1/#{self::OBJECT_NAME.downcase.tr('.', '/')}"
end
def resource_url
self.class.resource_url
end
def self.retrieve(opts = {})
instance = new(nil, Util.normalize_opts(opts))
instance.refresh
instance
end
end
end