class Rack::BearerAuth::MatchPattern::Token

Public Instance Methods

match?(token) click to toggle source
# File lib/rack/bearer_auth/match_pattern.rb, line 100
def match?(token)
  _match?(self.pattern, token)
end

Private Instance Methods

_match?(token_pattern, token_value) click to toggle source
# File lib/rack/bearer_auth/match_pattern.rb, line 106
def _match?(token_pattern, token_value) # rubocop:disable Metrics/MethodLength
  case token_pattern
  when String
    token_pattern == token_value
  when Regexp
    !(token_pattern =~ token_value).nil?
  when Proc
    token_pattern.call(token_value)
  when Array
    token_pattern.any? { |pattern| _match?(pattern, token_value) }
  else
    raise "Unsupported token pattern"
  end
end