class TimeDoctor::Worker
Constants
- ENTRY
Attributes
config[R]
conn[R]
Public Class Methods
new(config)
click to toggle source
# File lib/timedoctor/worker.rb, line 7 def initialize(config) @config = config @conn = Faraday.new(url: ENTRY) end
Public Instance Methods
exchange(method, url, params = {})
click to toggle source
# File lib/timedoctor/worker.rb, line 12 def exchange(method, url, params = {}) raise EmptyAccessToken unless config[:access_token] params[:access_token] = config[:access_token] params[:_format] = :json response = conn.public_send method, url, params case response.status when 200 JSON.parse(response.body, symbolize_names: true) when 401 exchange(method, url, params) if Token.new(config).refresh else raise UnknownError, response end end