Class: DrinkAPI

Inherits:
Object
  • Object
show all
Defined in:
lib/LiquerY/DrinkAPI.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeDrinkAPI

Returns a new instance of DrinkAPI.



3
4
5
6
7
8
9
10
# File 'lib/LiquerY/DrinkAPI.rb', line 3

def initialize
  data = open("https://www.thecocktaildb.com/api/json/v1/1/filter.php?c=Cocktail").read
  doc = JSON.parse(data)
  #key is ["drinks"] value is array of ingredients
  @id_array = doc.first.last.each.with_object([]) do |id_hash, array|
    array << id_hash["idDrink"]
  end
end

Instance Attribute Details

#id_arrayObject (readonly)

Returns the value of attribute id_array.



2
3
4
# File 'lib/LiquerY/DrinkAPI.rb', line 2

def id_array
  @id_array
end

Instance Method Details

#make_hashObject



12
13
14
15
16
# File 'lib/LiquerY/DrinkAPI.rb', line 12

def make_hash
  self.id_array.each.with_object({}) do |id, drink_hash|
    drink_hash[id] = JSON.parse(open("https://www.thecocktaildb.com/api/json/v1/1/lookup.php?i=#{id}").read).values.first[0]
  end
end