Class: JwtAuthEngine::RefreshTokenService
- Inherits:
-
BaseService
- Object
- BaseService
- JwtAuthEngine::RefreshTokenService
- Defined in:
- app/services/jwt_auth_engine/refresh_token_service.rb
Overview
Validates refresh tokens and resolves the associated auth model.
Instance Attribute Summary collapse
-
#refresh_token ⇒ Object
readonly
Returns the value of attribute refresh_token.
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(refresh_token:) ⇒ RefreshTokenService
constructor
A new instance of RefreshTokenService.
Methods inherited from BaseService
Constructor Details
#initialize(refresh_token:) ⇒ RefreshTokenService
Returns a new instance of RefreshTokenService.
8 9 10 11 |
# File 'app/services/jwt_auth_engine/refresh_token_service.rb', line 8 def initialize(refresh_token:) @refresh_token = refresh_token super() end |
Instance Attribute Details
#refresh_token ⇒ Object (readonly)
Returns the value of attribute refresh_token.
6 7 8 |
# File 'app/services/jwt_auth_engine/refresh_token_service.rb', line 6 def refresh_token @refresh_token end |
Instance Method Details
#call ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'app/services/jwt_auth_engine/refresh_token_service.rb', line 13 def call return failure(error: 'refresh_token is required.') if refresh_token.blank? success(JwtAuthEngine.auth_model_name => auth_model_instance_from_token) rescue JwtAuthEngine::TokenExpired failure(error: 'Refresh token has expired.') rescue JwtAuthEngine::InvalidToken failure(error: 'Invalid refresh token.') rescue JwtAuthEngine::InvalidTokenType failure(error: 'Refresh token expected') rescue ActiveRecord::RecordNotFound failure(error: "#{JwtAuthEngine.auth_model_name.to_s.humanize} not found.") end |