Initialize the new cascade strategy, which will set up the relation and the metadata.
@example Instantiate the strategy
Strategy.new(document, metadata)
@param [ Document ] document The document to cascade from. @param [ Metadata ] metadata The relation's metadata.
@return [ Strategy ] The new strategy.
# File lib/mongoid/relations/cascading/restrict.rb, line 18 def initialize(document, metadata) @document, @metadata = document, metadata @relation = document.send(metadata.name) end
Execute the cascading deletion for the relation if it already exists. This should be optimized in the future potentially not to load all objects from the db.
@example Perform the cascading delete.
strategy.cascade
# File lib/mongoid/relations/cascading/restrict.rb, line 29 def cascade unless relation.blank? raise Errors::DeleteRestriction.new(document, metadata.name) end end
Generated with the Darkfish Rdoc Generator 2.