class SecondStep::APIRequests::Request

Attributes

token_cache[W]

Public Class Methods

auth_url() click to toggle source
# File lib/second_step/api_requests/request.rb, line 19
def auth_url
  client.auth_code.authorize_url redirect_uri: config.redirect_uri
end
client() click to toggle source
# File lib/second_step/api_requests/request.rb, line 8
def client
  @@client ||= OAuth2::Client.new(config.client_id, config.client_secret, site: config.base_uri)
end
path(*args) click to toggle source
# File lib/second_step/api_requests/request.rb, line 25
def path(*args)
  PathBuilder.new(*args)
end
token(type=@token_type, auth_code: nil) click to toggle source
# File lib/second_step/api_requests/request.rb, line 11
def token(type=@token_type, auth_code: nil)
  case type
  when :auth_code
    client.auth_code.get_token auth_code, redirect_uri: config.redirect_uri
  when :client_credentials
    client.client_credentials.get_token
  end
end
token_type(type) click to toggle source
# File lib/second_step/api_requests/request.rb, line 22
def token_type(type)
  @token_type = type
end

Public Instance Methods

path(*args) click to toggle source
# File lib/second_step/api_requests/request.rb, line 29
def path(*args)
  PathBuilder.new(*args)
end
token(*args, **opts) click to toggle source
# File lib/second_step/api_requests/request.rb, line 38
def token(*args, **opts)
  token_cache_args(args)[opts] ||= self.class.token(*args, **opts)
end
token!(*args, **opts) click to toggle source
# File lib/second_step/api_requests/request.rb, line 41
def token!(*args, **opts)
  token_cache_args(args)[opts] = self.class.token(*args, **opts)
end
token_cache() click to toggle source
# File lib/second_step/api_requests/request.rb, line 32
def token_cache
  @token_cache ||= {}
end
token_cache_args(args) click to toggle source
# File lib/second_step/api_requests/request.rb, line 35
def token_cache_args(args)
  token_cache[args] ||= {}
end