module Luchadeer::API
Constants
- RESOURCES
Attributes
cache[W]
Public Instance Methods
cache(key, refresh = false) { || ... }
click to toggle source
# File lib/luchadeer/api.rb, line 43 def cache(key, refresh = false) @cache ||= {} @cache.delete(key) if refresh if block_given? @cache[key] || (@cache[key] = yield) else @cache.fetch(key) end end
fetch(path, refresh = false, klass = Luchadeer::Resource)
click to toggle source
# File lib/luchadeer/api.rb, line 54 def fetch(path, refresh = false, klass = Luchadeer::Resource) return unless results = cache(path, refresh) do get(path).body[:results] end results.is_a?(Array) ? results.map { |r| klass.new(r) } : klass.new(results) end