Class: InputSanitizer::V2::PayloadSanitizer
- Defined in:
- lib/input_sanitizer/v2/payload_sanitizer.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#validation_context ⇒ Object
Returns the value of attribute validation_context.
Class Method Summary collapse
Instance Method Summary collapse
- #error_collection ⇒ Object
-
#initialize(data, validation_context = {}) ⇒ PayloadSanitizer
constructor
A new instance of PayloadSanitizer.
Constructor Details
#initialize(data, validation_context = {}) ⇒ PayloadSanitizer
Returns a new instance of PayloadSanitizer.
4 5 6 7 8 |
# File 'lib/input_sanitizer/v2/payload_sanitizer.rb', line 4 def initialize(data, validation_context = {}) super data self.validation_context = validation_context || {} end |
Instance Attribute Details
#validation_context ⇒ Object
Returns the value of attribute validation_context.
2 3 4 |
# File 'lib/input_sanitizer/v2/payload_sanitizer.rb', line 2 def validation_context @validation_context end |
Class Method Details
.converters ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/input_sanitizer/v2/payload_sanitizer.rb', line 19 def self.converters { :integer => InputSanitizer::V2::Types::IntegerCheck.new, :float => InputSanitizer::V2::Types::FloatCheck.new, :string => InputSanitizer::V2::Types::StringCheck.new, :boolean => InputSanitizer::V2::Types::BooleanCheck.new, :datetime => InputSanitizer::V2::Types::DatetimeCheck.new, :date => InputSanitizer::V2::Types::DatetimeCheck.new(:check_date => true), :url => InputSanitizer::V2::Types::URLCheck.new, } end |
.nested(*keys) ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/input_sanitizer/v2/payload_sanitizer.rb', line 32 def self.nested(*keys) = keys.pop sanitizer = .delete(:sanitizer) keys.push() raise "You did not define a sanitizer for nested value" if sanitizer == nil converter = lambda { |value, | instance = InputSanitizer::V2::NestedSanitizerFactory.for(sanitizer, value, ) raise InputSanitizer::NestedError.new(instance.errors) unless instance.valid? instance.cleaned } keys << {} unless keys.last.is_a?(Hash) keys.last[:nested] = true self.set_keys_to_converter(keys, converter) end |
Instance Method Details
#error_collection ⇒ Object
15 16 17 |
# File 'lib/input_sanitizer/v2/payload_sanitizer.rb', line 15 def error_collection @error_collection ||= InputSanitizer::V2::ErrorCollection.new(errors) end |