Example #1
0
def delete_graph(graph):
    '''delete a graph'''
    dsrc = data_source.get_instance()
    graph_tbl = graphs_table.GraphsTable.get_instance()
    node_tbl = nodes_table.NodesTable.get_instance()
    arc_tbl = arcs_table.ArcsTable.get_instance()
    dsrc.begin_transaction()
    graph.root_id = 'NULL'
    graph = graph_tbl.update(graph)
    nodes = node_tbl.get(graph_id=graph.oid)
    for node in nodes:
        arcs = arc_tbl.get(head_id=node.oid)
        for arc in arcs:
            arc_tbl.delete(oid=arc.oid)
        arcs = arc_tbl.get(tail_id=node.oid)
        for arc in arcs:
            arc_tbl.delete(oid=arc.oid)
        node_tbl.delete(oid=node.oid)
    graph_tbl.delete(oid=graph.oid)
    dsrc.end_transaction()
Example #2
0
 def __init__(self):
     self.s_tbl = sessions_table.SessionsTable()
     self.cfg = config.Config.get_instance()
     self.dsrc = data_source.get_instance()