class HasJwtToken::JwtConfiguration
Constants
- CLAIMS
- DEFAULT_AUTH_ATTRIBUTE
Attributes
defined_claims[R]
model[RW]
Public Class Methods
new()
click to toggle source
# File lib/has_jwt_token/jwt_configuration.rb, line 19 def initialize @payload = {} @header = {} @defined_claims = [] end
Public Instance Methods
algorithm(value = nil)
click to toggle source
# File lib/has_jwt_token/jwt_configuration.rb, line 25 def algorithm(value = nil) return @algorithm unless value @algorithm = value end
authenticate_by()
click to toggle source
# File lib/has_jwt_token/jwt_configuration.rb, line 83 def authenticate_by @authenticate_by || DEFAULT_AUTH_ATTRIBUTE end
claims_payload()
click to toggle source
# File lib/has_jwt_token/jwt_configuration.rb, line 66 def claims_payload defined_claims.each_with_object({}) do |claim_name, memo| claim_key = CLAIMS[claim_name] memo[claim_key] = public_send(claim_name) end end
header(name = nil, value = nil)
click to toggle source
# File lib/has_jwt_token/jwt_configuration.rb, line 73 def header(name = nil, value = nil) @header[name] = value if name end
header_fields()
click to toggle source
# File lib/has_jwt_token/jwt_configuration.rb, line 77 def header_fields @header.transform_values do |val| val.is_a?(Proc) ? val.call : val end end
model_payload()
click to toggle source
# File lib/has_jwt_token/jwt_configuration.rb, line 49 def model_payload @payload.transform_values do |val| next val if !val.is_a?(Proc) || !model begin val.call(model) rescue ArgumentError val.call end end end
payload(name = nil, value: nil, auth_by: false)
click to toggle source
# File lib/has_jwt_token/jwt_configuration.rb, line 61 def payload(name = nil, value: nil, auth_by: false) @authenticate_by = name if auth_by @payload[name] = value || ->(model) { model.respond_to?(name) && model.public_send(name) } if name end
secret(value = nil)
click to toggle source
# File lib/has_jwt_token/jwt_configuration.rb, line 31 def secret(value = nil) return @secret unless value @secret = value end