class JwtRest::Tokens::JwtRest::Tokens::JwtRest::Tokens::Jwt

Attributes

payload[R]
token[R]

Public Class Methods

new(payload: nil, token: nil) click to toggle source
# File lib/jwt_rest/tokens/jwt.rb, line 6
def initialize(payload: nil, token: nil)
  @payload = payload || {}
  @token = token
end

Public Instance Methods

load_payload() click to toggle source
# File lib/jwt_rest/tokens/jwt.rb, line 11
def load_payload
  @payload[:exp] = default_exp unless @payload[:exp]
  @token = JWT.encode(payload, key, 'RS384')
  self
end
load_token() click to toggle source
# File lib/jwt_rest/tokens/jwt.rb, line 17
def load_token
  parts = JWT.decode(token, key.public_key, true, { algorithm: 'RS384' }) rescue nil
  @payload = parts.reduce({}, :merge) if parts
  self
end

Private Instance Methods

default_exp() click to toggle source
# File lib/jwt_rest/tokens/jwt.rb, line 29
def default_exp
  (Time.now + 24 * 3600).to_i
end
key() click to toggle source
# File lib/jwt_rest/tokens/jwt.rb, line 25
def key
  JwtRest::Secrets.rsa_private
end