module GrapeOnRails::Models::UserTokenActor

Public Instance Methods

check_missing_columns() click to toggle source
# File lib/grape_on_rails/models/user_token_actor.rb, line 39
def check_missing_columns
  %w(token refresh_token expires_at) - column_names
end
expired?() click to toggle source
# File lib/grape_on_rails/models/user_token_actor.rb, line 18
def expired?
  expires_at <= Time.zone.now
end
expires!() click to toggle source
# File lib/grape_on_rails/models/user_token_actor.rb, line 22
def expires!
  update_attributes! expired_at: Time.zone.now
end
find_token!(token) click to toggle source
# File lib/grape_on_rails/models/user_token_actor.rb, line 33
def find_token! token
  find_by(token: token).tap do |user_token|
    raise APIError::TokenExpired if user_token&.expired?
  end
end
generate!(user) click to toggle source
# File lib/grape_on_rails/models/user_token_actor.rb, line 28
def generate! user
  token = find_or_initialize_by GoR.models.user.downcase => user
  token.renew!
end
renew!(remember = false) click to toggle source
# File lib/grape_on_rails/models/user_token_actor.rb, line 12
def renew! remember = false
  update! expires_at: GoR.token_configs.public_send(remember ? :expires_in : :short_expires_in).second.from_now,
    token: unique_random(:token), refresh_token: unique_random(:refresh_token)
  self
end