class JWT::ClaimsValidator

Constants

INTEGER_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_int_claims

  true
end

Private Instance Methods

validate_int_claims() click to toggle source
# File lib/jwt/claims_validator.rb, line 23
def validate_int_claims
  INTEGER_CLAIMS.each do |claim|
    validate_is_int(claim) if @payload.key?(claim)
  end
end
validate_is_int(claim) click to toggle source
# File lib/jwt/claims_validator.rb, line 29
def validate_is_int(claim)
  raise InvalidPayload, "#{claim} claim must be an Integer but it is a #{@payload[claim].class}" unless @payload[claim].is_a?(Integer)
end