module Doorkeeper::AccessTokenMixin

Public Instance Methods

acceptable?(scopes) click to toggle source
# File lib/doorkeeper/models/access_token_mixin.rb, line 121
def acceptable?(scopes)
  accessible? && includes_scope?(*scopes)
end
as_json(_options = {}) click to toggle source
# File lib/doorkeeper/models/access_token_mixin.rb, line 105
def as_json(_options = {})
  {
    resource_owner_id:  resource_owner_id,
    scopes:             scopes,
    expires_in_seconds: expires_in_seconds,
    application:        { uid: application.try(:uid) },
    created_at:         created_at.to_i,
  }
end
same_credential?(access_token) click to toggle source

It indicates whether the tokens have the same credential

# File lib/doorkeeper/models/access_token_mixin.rb, line 116
def same_credential?(access_token)
  application_id == access_token.application_id &&
    resource_owner_id == access_token.resource_owner_id
end
token_type() click to toggle source
# File lib/doorkeeper/models/access_token_mixin.rb, line 97
def token_type
  'bearer'
end
use_refresh_token?() click to toggle source
# File lib/doorkeeper/models/access_token_mixin.rb, line 101
def use_refresh_token?
  !!@use_refresh_token
end

Private Instance Methods

generate_refresh_token() click to toggle source
# File lib/doorkeeper/models/access_token_mixin.rb, line 127
def generate_refresh_token
  write_attribute :refresh_token, UniqueToken.generate
end
generate_token() click to toggle source
# File lib/doorkeeper/models/access_token_mixin.rb, line 131
def generate_token
  generator = Doorkeeper.configuration.access_token_generator.constantize
  self.token = generator.generate(resource_owner_id: resource_owner_id,
                                  scopes: scopes, application: application,
                                  expires_in: expires_in)
rescue NoMethodError
  raise Errors::UnableToGenerateToken, "#{generator} does not respond to `.generate`."
rescue NameError
  raise Errors::TokenGeneratorNotFound, "#{generator} not found"
end