Sha256: a7c411aeac9fc81c59a693ebd564541ad7d148447ec08e2c16187df91299a975

Contents?: true

Size: 559 Bytes

Versions: 25

Compression:

Stored size: 559 Bytes

Contents

class ExvoAuth::Autonomous::Provider < ExvoAuth::Autonomous::Base
  def initialize(params = {})
    super
    validate_params!(:consumer_id, :access_token)
  end
  
  def scopes
    @@cache.fetch(params) do
      scopes!
    end
  end
  
  def scopes!
    response = auth.get("/apps/provider/authorizations/#{URI.escape(params[:consumer_id])}.json",
      :query => { :access_token => params[:access_token] }
    )

    if scope = response["scope"] 
      @@cache.write(params, scope.split)
    else
      [] # only cache positive responses
    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
exvo-auth-0.9.8 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.9.7 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.9.6 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.9.5 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.9.4 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.9.3 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.9.2 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.9.0 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.8.2 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.8.0 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.7.16 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.7.15 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.7.14 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.7.13 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.7.12 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.7.11 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.7.10 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.7.9 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.7.8 lib/exvo_auth/autonomous/provider.rb
exvo-auth-0.7.7 lib/exvo_auth/autonomous/provider.rb