Exception: KeycloakApiRails::TokenError

Inherits:
StandardError
  • Object
show all
Defined in:
lib/keycloak-api-rails/token_error.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(token, reason, message, original_error = nil) ⇒ TokenError

Returns a new instance of TokenError.



5
6
7
8
9
10
# File 'lib/keycloak-api-rails/token_error.rb', line 5

def initialize(token, reason, message, original_error = nil)
  super(message)
  @token          = token
  @reason         = reason
  @original_error = original_error
end

Instance Attribute Details

#original_errorObject (readonly)

Returns the value of attribute original_error.



3
4
5
# File 'lib/keycloak-api-rails/token_error.rb', line 3

def original_error
  @original_error
end

#reasonObject (readonly)

Returns the value of attribute reason.



3
4
5
# File 'lib/keycloak-api-rails/token_error.rb', line 3

def reason
  @reason
end

#tokenObject (readonly)

Returns the value of attribute token.



3
4
5
# File 'lib/keycloak-api-rails/token_error.rb', line 3

def token
  @token
end

Class Method Details

.expired(token) ⇒ Object



24
25
26
# File 'lib/keycloak-api-rails/token_error.rb', line 24

def self.expired(token)
  new(token, :expired, "JWT token is expired")
end

.invalid_audience(token) ⇒ Object



32
33
34
# File 'lib/keycloak-api-rails/token_error.rb', line 32

def self.invalid_audience(token)
  new(token, :invalid_audience, "JWT token has been issued for another audience")
end

.invalid_format(token, original_error) ⇒ Object



16
17
18
# File 'lib/keycloak-api-rails/token_error.rb', line 16

def self.invalid_format(token, original_error)
  new(token, :invalid_format, "Wrong JWT Format", original_error)
end

.invalid_token_type(token) ⇒ Object



36
37
38
# File 'lib/keycloak-api-rails/token_error.rb', line 36

def self.invalid_token_type(token)
  new(token, :invalid_token_type, "JWT token is not of the expected type")
end

.missing_claim(token, claim) ⇒ Object



40
41
42
# File 'lib/keycloak-api-rails/token_error.rb', line 40

def self.missing_claim(token, claim)
  new(token, :missing_claim, "JWT token does not carry the mandatory claim '#{claim}'")
end

.no_token(token) ⇒ Object



20
21
22
# File 'lib/keycloak-api-rails/token_error.rb', line 20

def self.no_token(token)
  new(token, :no_token, "No JWT token provided")
end

.not_yet_valid(token) ⇒ Object



28
29
30
# File 'lib/keycloak-api-rails/token_error.rb', line 28

def self.not_yet_valid(token)
  new(token, :not_yet_valid, "JWT token is not valid yet")
end

.unknown(token, original_error) ⇒ Object



44
45
46
# File 'lib/keycloak-api-rails/token_error.rb', line 44

def self.unknown(token, original_error)
  new(token, :unknown, "Failed to read JWT token", original_error)
end

.verification_failed(token, original_error) ⇒ Object



12
13
14
# File 'lib/keycloak-api-rails/token_error.rb', line 12

def self.verification_failed(token, original_error)
  new(token, :verification_failed, "Failed to verify JWT token", original_error)
end