module ActiveGraph::Node::Dependent::AssociationMethods

Public Instance Methods

add_destroy_callbacks(model) click to toggle source
   # File lib/active_graph/node/dependent/association_methods.rb
 9 def add_destroy_callbacks(model)
10   return if dependent.nil?
11 
12   model.before_destroy(&method("dependent_#{dependent}_callback"))
13 rescue NameError
14   raise "Unknown dependent option #{dependent}"
15 end
validate_dependent(value) click to toggle source
  # File lib/active_graph/node/dependent/association_methods.rb
5 def validate_dependent(value)
6   fail ArgumentError, "Invalid dependent value: #{value.inspect}" if not valid_dependent_value?(value)
7 end

Private Instance Methods

dependent_delete_callback(object) click to toggle source

Callback methods

   # File lib/active_graph/node/dependent/association_methods.rb
26 def dependent_delete_callback(object)
27   object.association_query_proxy(name).delete_all
28 end
dependent_delete_orphans_callback(object) click to toggle source
   # File lib/active_graph/node/dependent/association_methods.rb
30 def dependent_delete_orphans_callback(object)
31   unique_query = object.as(:self).unique_nodes(self, :self, :n, :other_rel)
32   unique_query.query.optional_match('(n)-[r]-()').delete(:n, :r).exec if unique_query
33 end
dependent_destroy_callback(object) click to toggle source
   # File lib/active_graph/node/dependent/association_methods.rb
35 def dependent_destroy_callback(object)
36   unique_query = object.association_query_proxy(name)
37   unique_query.each_for_destruction(object, &:destroy) if unique_query
38 end
dependent_destroy_orphans_callback(object) click to toggle source
   # File lib/active_graph/node/dependent/association_methods.rb
40 def dependent_destroy_orphans_callback(object)
41   unique_query = object.as(:self).unique_nodes(self, :self, :n, :other_rel)
42   unique_query.each_for_destruction(object, &:destroy) if unique_query
43 end
valid_dependent_value?(value) click to toggle source
   # File lib/active_graph/node/dependent/association_methods.rb
19 def valid_dependent_value?(value)
20   return true if value.nil?
21 
22   self.respond_to?("dependent_#{value}_callback", true)
23 end