Class: Committee::RequestValidator
- Inherits:
-
Object
- Object
- Committee::RequestValidator
- Defined in:
- lib/committee/request_validator.rb
Instance Method Summary collapse
- #call(request, data) ⇒ Object
-
#initialize(link, options = {}) ⇒ RequestValidator
constructor
A new instance of RequestValidator.
Constructor Details
#initialize(link, options = {}) ⇒ RequestValidator
Returns a new instance of RequestValidator.
3 4 5 6 |
# File 'lib/committee/request_validator.rb', line 3 def initialize(link, = {}) @link = link @check_content_type = .fetch(:check_content_type, true) end |
Instance Method Details
#call(request, data) ⇒ Object
8 9 10 11 12 13 14 15 16 17 |
# File 'lib/committee/request_validator.rb', line 8 def call(request, data) check_content_type!(request, data) if @check_content_type if @link.schema valid, errors = @link.schema.validate(data) if !valid errors = JsonSchema::SchemaError.aggregate(errors).join("\n") raise InvalidRequest, "Invalid request.\n\n#{errors}" end end end |