Exemplo n.º 1
0
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 "___________________"
Exemplo n.º 2
0
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})