Class: Epilicious::CookBook
- Inherits:
-
Object
- Object
- Epilicious::CookBook
- Defined in:
- lib/epilicious/cookbook.rb
Class Method Summary collapse
- .day ⇒ Object
- .fetcher(url) ⇒ Object
- .recipes(url) ⇒ Object
- .recipes=(cookbook) ⇒ Object
- .redis ⇒ Object
- .uri ⇒ Object
Class Method Details
.day ⇒ Object
39 40 41 |
# File 'lib/epilicious/cookbook.rb', line 39 def self.day 24 * 60 * 60 end |
.fetcher(url) ⇒ Object
35 36 37 |
# File 'lib/epilicious/cookbook.rb', line 35 def self.fetcher(url) Fetcher.new.fetch_recipes(url) end |
.recipes(url) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/epilicious/cookbook.rb', line 15 def self.recipes(url) unless recipe_vault = redis.get(url) fetched_recipes = fetcher(url) self.recipes = {url => fetched_recipes } return fetched_recipes end JSON.parse(recipe_vault).map do |recipe| Utilities.symbolize_keys(recipe) Recipe.new(recipe) end end |
.recipes=(cookbook) ⇒ Object
28 29 30 31 32 33 |
# File 'lib/epilicious/cookbook.rb', line 28 def self.recipes=(cookbook) url = cookbook.keys.first cookbook = cookbook[url].to_json redis.set(url, cookbook) redis.expire(url, day) end |
.redis ⇒ Object
9 10 11 12 13 |
# File 'lib/epilicious/cookbook.rb', line 9 def self.redis Redis.new(:host => uri.host, :port => uri.port, :password => uri.password) rescue Redis.new end |
.uri ⇒ Object
43 44 45 |
# File 'lib/epilicious/cookbook.rb', line 43 def self.uri URI.parse(ENV["REDISCLOUD_URL"]) end |