Class: AuthProvider::OAuthAccessToken
Defined Under Namespace
Classes: AccessTokenUnavailable
Instance Method Summary
collapse
Instance Method Details
#available? ⇒ Boolean
16
17
18
|
# File 'app/models/auth_provider/oauth_access_token.rb', line 16
def available?
!revoked? && !expired?
end
|
#expired? ⇒ Boolean
20
21
22
|
# File 'app/models/auth_provider/oauth_access_token.rb', line 20
def expired?
Time.now > (created_at || Time.now) + expires_in.seconds
end
|
#revoke! ⇒ Object
33
34
35
|
# File 'app/models/auth_provider/oauth_access_token.rb', line 33
def revoke!
update_attributes!(revoked_at: Time.current)
end
|
#revoke_other_access_tokens_under_the_session! ⇒ Object
37
38
39
|
# File 'app/models/auth_provider/oauth_access_token.rb', line 37
def revoke_other_access_tokens_under_the_session!
oauth_session.oauth_access_tokens.not_revoked.where.not(id: id).update_all(revoked_at: Time.current)
end
|
#revoked? ⇒ Boolean
24
25
26
|
# File 'app/models/auth_provider/oauth_access_token.rb', line 24
def revoked?
revoked_at.present? || oauth_session.revoked?
end
|
#use! ⇒ Object
28
29
30
31
|
# File 'app/models/auth_provider/oauth_access_token.rb', line 28
def use!
raise AccessTokenUnavailable unless available?
revoke_other_access_tokens_under_the_session!
end
|