Sha256: ffa8abceb28c344378f3057004d24716c17e231fa7659deb54e0d4aef2974233

Contents?: true

Size: 1.14 KB

Versions: 4

Compression:

Stored size: 1.14 KB

Contents

require 'oauth2'
module Sorcery
  module Controller
    module Submodules
      module External
        module Protocols
          module Oauth2
            def oauth_version
              "2.0"
            end
            
            def authorize_url(options = {})
              defaults = {
                :site => @site,
                :ssl => { :ca_file => Config.ca_file }
              }
              client = ::OAuth2::Client.new(
                @key,
                @secret,
                defaults.merge!(options)
              )
              client.web_server.authorize_url(
                :redirect_uri => @callback_url,
                :scope => @scope
              )
            end
            
            def get_access_token(args)
              client = ::OAuth2::Client.new(
                @key,
                @secret,
                :site => @site,
                :ssl => { :ca_file => Config.ca_file }
              )
              client.web_server.get_access_token(
                args[:code],
                :redirect_uri => @callback_url
              )
            end
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
sorcery-0.7.4 lib/sorcery/controller/submodules/external/protocols/oauth2.rb
sorcery-0.7.3 lib/sorcery/controller/submodules/external/protocols/oauth2.rb
sorcery-0.7.2 lib/sorcery/controller/submodules/external/protocols/oauth2.rb
sorcery-0.7.1 lib/sorcery/controller/submodules/external/protocols/oauth2.rb