class JWT::ClaimsValidator

Constants

NUMERIC_CLAIMS

Public Class Methods

new(payload) click to toggle source
# File lib/jwt/claims_validator.rb, line 11
def initialize(payload)
  @payload = payload.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
end

Public Instance Methods

validate!() click to toggle source
# File lib/jwt/claims_validator.rb, line 15
def validate!
  validate_numeric_claims

  true
end

Private Instance Methods

validate_is_numeric(claim) click to toggle source
# File lib/jwt/claims_validator.rb, line 29
def validate_is_numeric(claim)
  return if @payload[claim].is_a?(Numeric)

  raise InvalidPayload, "#{claim} claim must be a Numeric value but it is a #{@payload[claim].class}"
end
validate_numeric_claims() click to toggle source
# File lib/jwt/claims_validator.rb, line 23
def validate_numeric_claims
  NUMERIC_CLAIMS.each do |claim|
    validate_is_numeric(claim) if @payload.key?(claim)
  end
end