class Garage::Strategy::AccessToken

Attributes

raw_response[R]
scope[R]
token[R]
token_type[R]

Public Class Methods

new(attrs) click to toggle source
# File lib/garage/strategy/access_token.rb, line 6
def initialize(attrs)
  @raw_response = attrs
  @scope, @token, @token_type = attrs[:scope], attrs[:token], attrs[:token_type]
  @application_id, @resource_owner_id = attrs[:application_id], attrs[:resource_owner_id]
  @expired_at, @revoked_at = attrs[:expired_at], attrs[:revoked_at]
end

Public Instance Methods

acceptable?(required_scopes) click to toggle source
# File lib/garage/strategy/access_token.rb, line 37
def acceptable?(required_scopes)
  accessible? && includes_scope?(required_scopes)
end
accessible?() click to toggle source
# File lib/garage/strategy/access_token.rb, line 41
def accessible?
  !expired? && !revoked?
end
application_id() click to toggle source
# File lib/garage/strategy/access_token.rb, line 13
def application_id
  @application_id.try(:to_i)
end
expired?() click to toggle source
# File lib/garage/strategy/access_token.rb, line 49
def expired?
  !!expired_at.try(:past?)
end
expired_at() click to toggle source
# File lib/garage/strategy/access_token.rb, line 21
def expired_at
  @expired_at.present? ? Time.zone.parse(@expired_at) : nil
rescue ArgumentError, TypeError
  nil
end
includes_scope?(required_scopes) click to toggle source
# File lib/garage/strategy/access_token.rb, line 53
def includes_scope?(required_scopes)
  required_scopes.blank? || required_scopes.any? { |s| scopes.exists?(s) }
end
resource_owner_id() click to toggle source
# File lib/garage/strategy/access_token.rb, line 17
def resource_owner_id
  @resource_owner_id.try(:to_i)
end
revoked?() click to toggle source
# File lib/garage/strategy/access_token.rb, line 45
def revoked?
  !!revoked_at.try(:past?)
end
revoked_at() click to toggle source
# File lib/garage/strategy/access_token.rb, line 27
def revoked_at
  @revoked_at.present? ? Time.zone.parse(@revoked_at) : nil
rescue ArgumentError, TypeError
  nil
end
scopes() click to toggle source
# File lib/garage/strategy/access_token.rb, line 33
def scopes
  scope.try(:split, ' ')
end