Module: PostyClient::Resources::FinderConcern

Included in:
DomainAlias, User, UserAlias
Defined in:
lib/posty_client/resources/finder_concern.rb

Instance Method Summary collapse

Instance Method Details

#find_all_by_domain(domain) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# 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) ⇒ Object



26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# 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