Module: Devise::Oauth2Providable::ExpirableToken::ClassMethods

Defined in:
lib/devise/oauth2_providable/expirable_token.rb

Instance Method Summary collapse

Instance Method Details

#expires_according_to(config_name) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 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