Class: RubyReactor::Validation::InputValidator
- Defined in:
- lib/ruby_reactor/validation/input_validator.rb
Instance Attribute Summary collapse
-
#schema ⇒ Object
readonly
Returns the value of attribute schema.
-
#wrap_key ⇒ Object
readonly
Returns the value of attribute wrap_key.
Instance Method Summary collapse
- #call(data) ⇒ Object
-
#initialize(schema, wrap_key: nil) ⇒ InputValidator
constructor
A new instance of InputValidator.
Methods inherited from Base
Constructor Details
#initialize(schema, wrap_key: nil) ⇒ InputValidator
Returns a new instance of InputValidator.
10 11 12 13 14 |
# File 'lib/ruby_reactor/validation/input_validator.rb', line 10 def initialize(schema, wrap_key: nil) super() @schema = schema @wrap_key = wrap_key end |
Instance Attribute Details
#schema ⇒ Object (readonly)
Returns the value of attribute schema.
8 9 10 |
# File 'lib/ruby_reactor/validation/input_validator.rb', line 8 def schema @schema end |
#wrap_key ⇒ Object (readonly)
Returns the value of attribute wrap_key.
8 9 10 |
# File 'lib/ruby_reactor/validation/input_validator.rb', line 8 def wrap_key @wrap_key end |
Instance Method Details
#call(data) ⇒ Object
16 17 18 19 20 21 22 23 24 25 |
# File 'lib/ruby_reactor/validation/input_validator.rb', line 16 def call(data) data = { @wrap_key => data } if @wrap_key result = schema.call(data) if result.success? success(result.to_h) else failure(format_errors(result.errors)) end end |