class Delfos::Neo4j::Distance::Update
Public Instance Methods
perform()
click to toggle source
# File lib/delfos/neo4j/distance/update.rb, line 9 def perform results = CallSiteFetcher.perform return if results.length.negative? results.each do |start_file, call_site_id, finish_file, called_id| calc = FileSystem::DistanceCalculation.new(start_file, finish_file) update(call_site_id, called_id, calc) end Neo4j.flush! end
query()
click to toggle source
# File lib/delfos/neo4j/distance/update.rb, line 32 def query <<-QUERY START call_site = node({call_site_id}), called = node({called_id}) MERGE (call_site) - [:EFFERENT_COUPLING { distance: {sum_traversals}, possible_distance: {sum_possible_traversals} } ] -> (called) QUERY end
update(call_site_id, called_id, calc)
click to toggle source
# File lib/delfos/neo4j/distance/update.rb, line 22 def update(call_site_id, called_id, calc) Neo4j.execute( query, call_site_id: call_site_id, called_id: called_id, sum_traversals: calc.sum_traversals, sum_possible_traversals: calc.sum_possible_traversals ) end