class Iugu::APIResource

Public Class Methods

url(options = nil) click to toggle source
# File lib/iugu/api_resource.rb, line 3
def self.url(options = nil)
  endpoint_url + self.relative_url(options)
end

Protected Class Methods

endpoint_url() click to toggle source
# File lib/iugu/api_resource.rb, line 17
def self.endpoint_url
  Iugu.base_uri + object_base_uri 
end
object_base_uri() click to toggle source
# File lib/iugu/api_resource.rb, line 32
def self.object_base_uri
  pluralized_models = ["customer", "payment_method", "invoice", "subscription", "plan"]
  if pluralized_models.include? self.object_type
    object_type = self.object_type + "s"
  else
    object_type = self.object_type
  end
  object_type
end
object_type() click to toggle source
# File lib/iugu/api_resource.rb, line 13
def self.object_type
  Iugu::Utils.underscore self.name.to_s.split('::')[-1]
end
relative_url(options = "") click to toggle source
# File lib/iugu/api_resource.rb, line 21
def self.relative_url(options = "")
  if options.is_a?(Hash)
    id = options[:id] || options["id"]
  elsif options.is_a?(Iugu::APIResource)
    id = options.id
  else
    id = options
  end
  id ? "/#{id}" : ""
end

Public Instance Methods

is_new?() click to toggle source
# File lib/iugu/api_resource.rb, line 7
def is_new?
  @attributes['id'].nil?
end