Exception: ViewModel::DeserializationError::AssociatedNotFound

Inherits:
NotFound show all
Defined in:
lib/view_model/deserialization_error.rb

Instance Attribute Summary collapse

Attributes inherited from AbstractErrorWithBlame

#nodes

Instance Method Summary collapse

Methods inherited from ViewModel::DeserializationError

#code

Methods inherited from AbstractError

#aggregation?, #causes, #code, #exception, #status, #title, #to_s, #view

Constructor Details

#initialize(association, missing_nodes, blame_nodes) ⇒ AssociatedNotFound

Returns a new instance of AssociatedNotFound.



194
195
196
197
198
# File 'lib/view_model/deserialization_error.rb', line 194

def initialize(association, missing_nodes, blame_nodes)
  @association   = association
  @missing_nodes = Array.wrap(missing_nodes)
  super(blame_nodes)
end

Instance Attribute Details

#associationObject (readonly)

Returns the value of attribute association.



192
193
194
# File 'lib/view_model/deserialization_error.rb', line 192

def association
  @association
end

#missing_nodesObject (readonly)

Returns the value of attribute missing_nodes.



192
193
194
# File 'lib/view_model/deserialization_error.rb', line 192

def missing_nodes
  @missing_nodes
end

Instance Method Details

#detailObject



200
201
202
203
204
# File 'lib/view_model/deserialization_error.rb', line 200

def detail
  errors = missing_nodes.map(&:to_s).join(", ")
  "Couldn't find requested member node(s) in association '#{association}': "\
  "#{errors}"
end

#metaObject



206
207
208
209
# File 'lib/view_model/deserialization_error.rb', line 206

def meta
  super.merge(association: association,
              missing_nodes: format_references(missing_nodes))
end