module SquadGoals::Helpers

Public Instance Methods

client_call(method, *args) click to toggle source

Call octokit, using memcached response, when available

# File lib/squad_goals/helpers.rb, line 4
def client_call(method, *args)
  key = cache_key(method, args)
  cached = dalli.get(key)
  return cached if cached
  response = client.send(method, *args)
  dalli.set(key, response)
  response
end

Private Instance Methods

cache_key(method, *args) click to toggle source
# File lib/squad_goals/helpers.rb, line 15
def cache_key(method, *args)
  Digest::SHA1.hexdigest(method.to_s + ': ' + args.join(', '))
end
client() click to toggle source
# File lib/squad_goals/helpers.rb, line 19
def client
  SquadGoals::App.client
end
dalli() click to toggle source
# File lib/squad_goals/helpers.rb, line 23
def dalli
  SquadGoals::App.dalli
end