class Rack::OAuth2::Server::Resource

Constants

ACCESS_TOKEN
DEFAULT_REALM

Attributes

realm[RW]
request[RW]

Public Class Methods

new(app, realm = nil, &authenticator) click to toggle source
# File lib/rack/oauth2/server/resource.rb, line 9
def initialize(app, realm = nil, &authenticator)
  @app = app
  @realm = realm
  super(&authenticator)
end

Public Instance Methods

_call(env) click to toggle source
# File lib/rack/oauth2/server/resource.rb, line 15
def _call(env)
  if request.oauth2?
    access_token = authenticate! request.setup!
    env[ACCESS_TOKEN] = access_token
  end
  @app.call(env)
rescue Rack::OAuth2::Server::Abstract::Error => e
  e.realm ||= realm
  e.finish
end

Private Instance Methods

authenticate!(request) click to toggle source
# File lib/rack/oauth2/server/resource.rb, line 28
def authenticate!(request)
  @authenticator.call(request)
end