MCPcopy Create free account
hub / github.com/PKU-ASAL/Simulated-Data / merge_nodes

Method merge_nodes

src/Sysdig/real-time/ProvGraph.py:232–249  ·  view source on GitHub ↗
(self,g,nodes, new_node,remove_nodes_list)

Source from the content-addressed store, hash-verified

230
231
232 def merge_nodes(self,g,nodes, new_node,remove_nodes_list):
233 edge = list(g.edges(nodes,data=True))
234 edge.extend(list(g.in_edges(nodes,data=True)))
235 for n1,n2,data in edge:
236 # For all edges related to one of the nodes to merge,
237 # make an edge going to or coming from the `new gene`.
238 # print(data)
239 if n1 == new_node or n2 == new_node or n1 in remove_nodes_list or n2 in remove_nodes_list:
240 continue
241 if n1 in nodes:
242 g.add_edge(new_node,n2,e_type = data['e_type'])
243 elif n2 in nodes:
244 g.add_edge(n1,new_node,e_type = data['e_type'])
245
246 self.nodes[new_node]['score'] = max(max([self.GetNodeScore(i) for i in nodes]),self.nodes[new_node]['score'])
247 for i in nodes:
248 self.taylor_map[i] = new_node
249 return g
250
251 def if_file_node_merge(self,s,dic):
252 keys = list(dic.keys())

Callers 2

graph_taylorMethod · 0.95
final_graph_taylorMethod · 0.95

Calls 1

GetNodeScoreMethod · 0.95

Tested by

no test coverage detected