class GoogleOAuth::Client

Public Class Methods

new(options = {}) click to toggle source
# File lib/googleoauth/client.rb, line 8
def initialize(options = {})
    @client_id = options[:client_id]
    @client_secret = options[:client_secret]
    @redirect = options[:redirect]
end

Public Instance Methods

authorize(options = {}) click to toggle source
# File lib/googleoauth/client.rb, line 23
def authorize(options = {})
    @@token = consumer.auth_code.get_token(
        options[:code],
        :redirect_uri => @redirect
    )
end
authorize_url(options = {}) click to toggle source
# File lib/googleoauth/client.rb, line 14
def authorize_url(options = {})
  consumer.auth_code.authorize_url(
      :response_type => 'code',
      :client_id => @client_id,
      :redirect_uri => @redirect,
      :scope => options[:scope]
  )
end
request(request_uri) click to toggle source
# File lib/googleoauth/client.rb, line 30
def request(request_uri)
    @@token.get("https://www.googleapis.com/#{request_uri}".gsub('\/\/', '')).body
end

Private Instance Methods

consumer() click to toggle source
# File lib/googleoauth/client.rb, line 35
def consumer
    OAuth2::Client.new(
        @client_id,
        @client_secret,
        :site => 'https://accounts.google.com',
        :authorize_url => '/o/oauth2/auth',
        :token_url => '/o/oauth2/token'
   )
end