Class: DecodeThis
- Inherits:
-
Object
- Object
- DecodeThis
- Defined in:
- lib/decode_this.rb,
lib/decode_this/version.rb
Constant Summary collapse
- ConfigFileNotFoundError =
Class.new(RuntimeError)
- DecodeError =
Class.new(RuntimeError)
- VERSION =
'0.1.3'
Instance Attribute Summary collapse
-
#config_file ⇒ Object
readonly
Returns the value of attribute config_file.
-
#env ⇒ Object
readonly
Returns the value of attribute env.
-
#logger ⇒ Object
readonly
Returns the value of attribute logger.
-
#token ⇒ Object
readonly
Returns the value of attribute token.
Instance Method Summary collapse
- #decode ⇒ Object
-
#initialize(token, config_file:, env:, logger: nil) ⇒ DecodeThis
constructor
A new instance of DecodeThis.
Constructor Details
#initialize(token, config_file:, env:, logger: nil) ⇒ DecodeThis
Returns a new instance of DecodeThis.
13 14 15 16 17 18 |
# File 'lib/decode_this.rb', line 13 def initialize(token, config_file:, env:, logger: nil) @token = token @config_file = config_file @env = env @logger = logger end |
Instance Attribute Details
#config_file ⇒ Object (readonly)
Returns the value of attribute config_file.
11 12 13 |
# File 'lib/decode_this.rb', line 11 def config_file @config_file end |
#env ⇒ Object (readonly)
Returns the value of attribute env.
11 12 13 |
# File 'lib/decode_this.rb', line 11 def env @env end |
#logger ⇒ Object (readonly)
Returns the value of attribute logger.
11 12 13 |
# File 'lib/decode_this.rb', line 11 def logger @logger end |
#token ⇒ Object (readonly)
Returns the value of attribute token.
11 12 13 |
# File 'lib/decode_this.rb', line 11 def token @token end |
Instance Method Details
#decode ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/decode_this.rb', line 20 def decode JWT.decode(token, public_key, true, algorithm: algorithm).first rescue JWT::ExpiredSignature => err logger.warn("Expired JWT token #{err.class} - #{err.message}") if logger raise DecodeError rescue JWT::VerificationError => err logger.warn("Can't verify JWT token #{err.class} - #{err.message}") if logger raise DecodeError rescue JWT::DecodeError => err logger.warn("Can't decode JWT token '#{jwt_token}' #{err.class} - #{err.message}") if logger raise DecodeError end |