module PostyClient::Resources::FinderConcern

Public Instance Methods

find_all_by_domain(domain) click to toggle source
# File lib/posty_client/resources/finder_concern.rb, line 4
def find_all_by_domain(domain)
  response = RestClient.get([domain.slug, resource_name].join('/'))

  if response.code == 404
    logger.debug("#{self.class.name} :: load non existing object (#{response.code}) '#{response}'")
    return []
  elsif response.code != 200
    logger.error("#{self.class.name} :: load failed with (#{response.code}) '#{response}'")
    return nil
  end

  data = JSON.parse(response)

  data.collect do |datum|
    model = self.new(domain)
    model.attributes = datum.flatten.last
    model.new_resource = false

    model
  end
end
find_all_by_user(user) click to toggle source
# File lib/posty_client/resources/finder_concern.rb, line 26
def find_all_by_user(user)
  response = RestClient.get([user.slug, resource_name].join('/'))

  if response.code == 404
    logger.debug("#{self.class.name} :: load non existing object (#{response.code}) '#{response}'")
    return []
  elsif response.code != 200
    logger.error("#{self.class.name} :: load failed with (#{response.code}) '#{response}'")
    return nil
  end

  data = JSON.parse(response)

  data.collect do |datum|
    model = self.new(user)
    model.attributes = datum.flatten.last
    model.new_resource = false

    model
  end        
end