graphobj = Graph() n1 = Node(name="test") graphobj.addNode(n1) n2 = Node(name="Child1", parent=n1) graphobj.addNode(n2) n3 = Node(name="Child2", parent=n1) graphobj.addNode(n3) n1.addChildren(n2) n1.addChildren(n3) nodes = graphobj.nodes print "^^^^^^^^^^^^^^^^" selectnode = graphobj.getNode("Child2") print selectnode.name print "^^^^^^^^^^^^^^^^" for eachnode in nodes: print eachnode.name children = eachnode.getChildren() if len(children) > 0: for i in children: print "name" print i.name print "Parent" print i.parent.name print "((((((((" print "___________________"
db = client.input graphMaster = Graph() parentRoot = Node(name = "Root") graphMaster.addNode(parentRoot) RootElems = [] ## Construct the input Tree ### # get root elem emptyNode = [] seenNodes = [] rootelem = db.inputCollection.find({"name":"Root"}) for eachelem in rootelem: #create a Node childeelm = eachelem["children"] for eachchild in childeelm: if(graphMaster.getNode(eachchild) == "Not Found"): #create a node tmpchild = Node(name = eachchild, parent = parentRoot) parentRoot.addChildren(tmpchild) graphMaster.addNode(tmpchild) emptyNode.append(eachchild) seenNodes.append(eachchild) RootElems.append(tmpchild) while len(emptyNode) > 0 : curr = emptyNode.pop() currChild = graphMaster.getNode(curr) if currChild.name != "Root": cursor = db.inputCollection.find({"name":currChild.name})