Sha256: 03c7a4a418e6d1747c37a62c1c9a4fad062e64233c4f48e24158bbb50ff911f5

Contents?: true

Size: 528 Bytes

Versions: 1

Compression:

Stored size: 528 Bytes

Contents

module MangoPay
  # @abstract
  class Resource

    protected

    def self.class_name
      self.name.split('::')[-1]
    end

    def self.url(id = nil)
      if self == Resource
        raise NotImplementedError.new('Resource is an abstract class. Do not use it directly.')
      end
      if id
        "/v2/#{MangoPay.configuration.client_id}/#{CGI.escape(class_name.downcase)}s/#{CGI.escape(id)}"
      else
        "/v2/#{MangoPay.configuration.client_id}/#{CGI.escape(class_name.downcase)}s"
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mangopay-3.0.0 lib/mangopay/resource.rb