Module: Ecoportal::API::Common::Content::DoubleModel::DoubleDoc::ReplaceableDoc
- Extended by:
- Includer
- Includes:
- VarTracking
- Defined in:
- lib/ecoportal/api/common/content/double_model/double_doc/replaceable_doc.rb
Instance Method Summary collapse
-
#replace_doc(new_doc) ⇒ Object
INSTANCE METHODS.
Methods included from Includer
Instance Method Details
#replace_doc(new_doc) ⇒ Object
INSTANCE METHODS
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/ecoportal/api/common/content/double_model/double_doc/replaceable_doc.rb', line 25 def replace_doc(new_doc) return (@doc = new_doc) if root? unless linked? raise UnlinkedModel.new( from: "#{self.class}##{__method__}", key: _parent_key ) end dig_set!( _parent.doc, resolved_rooted_doc_key, new_doc ) _parent.variable_remove!(_parent_key) unless new_doc #variables_remove! end |