class RelateIQ::APIResource
Public Class Methods
all(params = {}, url = nil)
click to toggle source
# File lib/relateiq/api_resource.rb, line 23 def self.all(params = {}, url = nil) params = {} unless params.is_a? Hash plural = "#{name}s" path = url.nil? ? "#{plural}" : url response = RelateIQ.get(path, params) objects = response['objects'] || [] list = Array.new objects.each do |v| if v.class == Hash && v['id'].nil? c = self.new(v['id']) else c = self.new end c.refresh_from(v) list.push(c) end return RiqList.new(list) end
delete(id, params = {})
click to toggle source
# File lib/relateiq/api_resource.rb, line 69 def self.delete(id, params = {}) plural = "#{name}s" path = "#{plural}/#{id}" RelateIQ.delete(path) end
find(id, params = {}, url = nil)
click to toggle source
# File lib/relateiq/api_resource.rb, line 15 def self.find(id, params = {}, url = nil) path = url.nil? ? "#{name}s/#{id}" : url instance = self.new(id) response = RelateIQ.get(path, params) instance.refresh_from(response) instance end
name()
click to toggle source
# File lib/relateiq/api_resource.rb, line 3 def self.name n = self.to_s.split('::')[-1] # Hyphenize n.scan(/([A-Z][a-z]*)/).join('-').downcase end
update(id, params = {})
click to toggle source
# File lib/relateiq/api_resource.rb, line 48 def self.update(id, params = {}) plural = "#{name}s" path = "#{plural}/#{id}" p = { self.name => params }.to_json response = RelateIQ.put(path, p) end
Public Instance Methods
create(params = {})
click to toggle source
# File lib/relateiq/api_resource.rb, line 56 def create(params = {}) plural = "#{name}s" path = "#{plural}/#{self.id}" p = { self.name => params }.to_json resonse = RelateIQ.post(path, p) end
delete(params = {})
click to toggle source
# File lib/relateiq/api_resource.rb, line 63 def delete(params = {}) plural = "#{name}s" path = "#{plural}/#{self.id}" RelateIQ.delete(path) end
name()
click to toggle source
# File lib/relateiq/api_resource.rb, line 9 def name n = self.class.to_s.split('::')[-1] # Hyphenize n.scan(/([A-Z][a-z]*)/).join('-').downcase end
update(params = {})
click to toggle source
# File lib/relateiq/api_resource.rb, line 42 def update(params = {}) path = "#{self.name}s/#{self.id}" p = { self.name => params }.to_json response = RelateIQ.put(path, p) end