Class: PetfinderV2::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/petfinder_V2/client.rb

Constant Summary collapse

@@access_token =
nil

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client_id = nil, client_secret = nil) ⇒ Client

Returns a new instance of Client.



10
11
12
13
# File 'lib/petfinder_V2/client.rb', line 10

def initialize(client_id = nil, client_secret = nil)
  @client_id = client_id || Config.instance.read(:client_id)
  @client_secret = client_secret || Config.instance.read(:client_secret)
end

Class Method Details

.reset_access_token!Object



6
7
8
# File 'lib/petfinder_V2/client.rb', line 6

def self.reset_access_token!
  @@access_token = nil
end

Instance Method Details

#get_animal(id) ⇒ Object



21
22
23
24
# File 'lib/petfinder_V2/client.rb', line 21

def get_animal(id)
  response_data = base_request(:get, "animals/#{id}")
  Serializers::Animal.new(response_data['animal'])
end

#get_animal_breeds(animal_type) ⇒ Object



36
37
38
39
# File 'lib/petfinder_V2/client.rb', line 36

def get_animal_breeds(animal_type)
  response_data = base_request(:get, "types/#{animal_type}/breeds")
  Serializers::AnimalBreed.process_collection(response_data)
end

#get_animal_type(name) ⇒ Object



31
32
33
34
# File 'lib/petfinder_V2/client.rb', line 31

def get_animal_type(name)
  response_data = base_request(:get, "types/#{name}")
  Serializers::AnimalType.new(response_data['type'])
end

#get_animal_typesObject



26
27
28
29
# File 'lib/petfinder_V2/client.rb', line 26

def get_animal_types
  response_data = base_request(:get, 'types')
  Serializers::AnimalType.process_collection(response_data)
end

#get_organization(id) ⇒ Object



47
48
49
50
# File 'lib/petfinder_V2/client.rb', line 47

def get_organization(id)
  response_data = base_request(:get, "organizations/#{id}")
  Serializers::Organization.new(response_data['organization'])
end

#search_animals(opts = {}) ⇒ Object



15
16
17
18
19
# File 'lib/petfinder_V2/client.rb', line 15

def search_animals(opts = {})
  validate_animal_options!(opts)
  response_data = base_request(:get, 'animals', opts)
  Serializers::Animal.process_collection(response_data)
end

#search_organizations(opts = {}) ⇒ Object



41
42
43
44
45
# File 'lib/petfinder_V2/client.rb', line 41

def search_organizations(opts = {})
  validate_organization_options!(opts)
  response_data = base_request(:get, 'organizations', opts)
  Serializers::Organization.process_collection(response_data)
end