module Devise::Oauth2Providable::ExpirableToken::ClassMethods

Public Instance Methods

expires_according_to(config_name) click to toggle source
# File lib/devise/oauth2_providable/expirable_token.rb, line 7
def expires_according_to(config_name)
  cattr_accessor :default_lifetime
  self.default_lifetime = Rails.application.config.devise_oauth2_providable[config_name]

  belongs_to :user
  belongs_to :client, class_name: 'Devise::Oauth2Providable::Client'

  attr_accessible :user, :client

  after_initialize :init_token, on: :create, unless: :token?
  after_initialize :init_expires_at, on: :create, unless: :expires_at?
  validates :expires_at, presence: true
  validates :client, presence: true
  validates :token, presence: true, uniqueness: true

  default_scope where(:expires_at.gte => Time.now.utc)

  include LocalInstanceMethods
end