Class: Qonfig::Validation::Validators::MethodBased Private
- Defined in:
- lib/qonfig/validation/validators/method_based.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Instance Attribute Summary collapse
- #runtime_validation_method ⇒ Symbol, String readonly private
Attributes inherited from Basic
Instance Method Summary collapse
- #initialize(setting_key_matcher, strict, runtime_validation_method) ⇒ void constructor private
- #validate_concrete(data_set) ⇒ Boolean private
- #validate_full(data_set) ⇒ Boolean private
Methods inherited from Basic
Constructor Details
#initialize(setting_key_matcher, strict, runtime_validation_method) ⇒ void
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
19 20 21 22 |
# File 'lib/qonfig/validation/validators/method_based.rb', line 19 def initialize(setting_key_matcher, strict, runtime_validation_method) super(setting_key_matcher, strict) @runtime_validation_method = runtime_validation_method end |
Instance Attribute Details
#runtime_validation_method ⇒ Symbol, String (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
10 11 12 |
# File 'lib/qonfig/validation/validators/method_based.rb', line 10 def runtime_validation_method @runtime_validation_method end |
Instance Method Details
#validate_concrete(data_set) ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/qonfig/validation/validators/method_based.rb', line 29 def validate_concrete(data_set) data_set.settings.__deep_each_setting__ do |setting_key, setting_value| next unless setting_key_matcher.match?(setting_key) next if !strict && setting_value.nil? raise( Qonfig::ValidationError, "Invalid value of setting <#{setting_key}> (#{setting_value})" ) unless data_set.__send__(runtime_validation_method, setting_value) end end |
#validate_full(data_set) ⇒ Boolean
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
46 47 48 49 50 |
# File 'lib/qonfig/validation/validators/method_based.rb', line 46 def validate_full(data_set) unless data_set.__send__(runtime_validation_method) raise(Qonfig::ValidationError, 'Invalid config object') end end |