Class: JsonapiErrorable::Serializers::Validation
- Inherits:
-
Object
- Object
- JsonapiErrorable::Serializers::Validation
- Defined in:
- lib/jsonapi_errorable/serializers/validation.rb
Instance Attribute Summary collapse
-
#object ⇒ Object
readonly
Returns the value of attribute object.
Instance Method Summary collapse
- #attribute_errors ⇒ Object
- #errors ⇒ Object
-
#initialize(object, relationship_payloads = {}, relationship_meta = {}) ⇒ Validation
constructor
A new instance of Validation.
Constructor Details
#initialize(object, relationship_payloads = {}, relationship_meta = {}) ⇒ Validation
Returns a new instance of Validation.
6 7 8 9 10 |
# File 'lib/jsonapi_errorable/serializers/validation.rb', line 6 def initialize(object, relationship_payloads = {}, = {}) @object = object @relationship_payloads = relationship_payloads @relationship_meta = end |
Instance Attribute Details
#object ⇒ Object (readonly)
Returns the value of attribute object.
4 5 6 |
# File 'lib/jsonapi_errorable/serializers/validation.rb', line 4 def object @object end |
Instance Method Details
#attribute_errors ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/jsonapi_errorable/serializers/validation.rb', line 12 def attribute_errors [].tap do |errors| each_error do |attribute, , code| error = { code: 'unprocessable_entity', status: '422', title: 'Validation Error', detail: detail_for(attribute, ), source: { pointer: pointer_for(object, attribute) }, meta: (attribute, , code, @relationship_meta) } errors << error end end end |
#errors ⇒ Object
29 30 31 32 33 34 35 |
# File 'lib/jsonapi_errorable/serializers/validation.rb', line 29 def errors return [] unless object.respond_to?(:errors) all_errors = attribute_errors all_errors |= relationship_errors(@relationship_payloads) all_errors end |