Sha256: 627a73127c511bafa9875c52618f575b6c3f200748b368b1cf6ddf382b7e5c98
Contents?: true
Size: 733 Bytes
Versions: 2
Compression:
Stored size: 733 Bytes
Contents
require 'singleton' module Polytrix class ValidatorRegistry include Singleton def validators @validator ||= [] end class << self def validators instance.validators end def register(validator, &callback) if block_given? match_rules = validator validator = Validator.new(match_rules, &callback) end validators << validator end def validators_for(challenge) selected_validators = validators.select { |v| v.should_validate? challenge } selected_validators.empty? ? [Polytrix.configuration.default_validator] : selected_validators end def clear validators.clear end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
polytrix-0.1.0 | lib/polytrix/validator_registry.rb |
polytrix-0.1.0.pre | lib/polytrix/validator_registry.rb |