Changeset 57

Show
Ignore:
Timestamp:
02/26/10 12:28:05 (6 months ago)
Author:
ke
Message:

DB tree bugfix: must set primary model very early.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • kahina/trunk/src/org/kahina/data/tree/KahinaDbTree.java

    r56 r57  
    174174        public void addChild(int parent, int child) 
    175175        { 
     176                System.err.println("adding " + child + " to " + parent + " in " + this); 
    176177                try 
    177178                { 
     
    311312        public List<Integer> getChildren(int nodeID, int layer) 
    312313        { 
     314                System.err.print("children for " + nodeID + "(" + getNodeCaption(nodeID) + ") on " + layer + ": "); 
    313315                int nodeLayer = getLayer(nodeID); 
    314316                if (layer == nodeLayer) 
     
    317319                        // children 
    318320                        List<Integer> result = getVirtualChildren(nodeID); 
    319                         return result
     321                        return ear(result)
    320322                } 
    321323                if (nodeID == getRootID(layer) || nodeLayer >= layer) 
     
    335337                                } 
    336338                        } 
    337                         return frontLine
     339                        return ear(frontLine)
    338340                } 
    339341                // When we have reached a "cornerstone", pretend it's a leaf: 
    340                 return Collections.emptyList(); 
     342                return ear(Collections.emptyList()); 
    341343        } 
    342344 
     
    482484 
    483485        public static KahinaTree importXML(Document dom, LayerDecider decider, 
    484                         DatabaseHandler db
     486                        DatabaseHandler db, KahinaTree primaryModel
    485487        { 
    486488                KahinaDbTree m = new KahinaDbTree(decider, db); 
     489                if (primaryModel != null) 
     490                { 
     491                        m.setPrimaryModel(primaryModel); 
     492                } 
    487493                Element treeElement = dom.getDocumentElement(); 
    488494                NodeList childNodes = treeElement.getChildNodes(); 
  • kahina/trunk/src/org/kahina/data/tree/KahinaMemTree.java

    r50 r57  
    6161        public List<Integer> getChildren(int nodeID, int layerID) 
    6262    { 
     63        System.err.print("children for " + nodeID + "(" + getNodeCaption(nodeID) + ") on " + layerID + ": "); 
    6364        //System.err.print("KahinaLayeredTree.getChildren(" + nodeID + "," + layerID + ") = "); 
    6465        List<Integer> chi = new ArrayList<Integer>(); 
     
    8788        //System.err.println(" node: " + nodeID + " layer: " + layerID + " chi: " + chi); 
    8889        //System.err.println(chi); 
    89         return chi
     90        return ear(chi)
    9091    } 
    9192     
  • kahina/trunk/src/org/kahina/data/tree/KahinaTree.java

    r53 r57  
    2323                this.decider = decider; 
    2424                doClear(); 
     25        } 
     26         
     27 
     28 
     29        public List<Integer> ear(List x) 
     30        { 
     31                System.err.println(x); 
     32                return (List<Integer>) x; 
    2533        } 
    2634 
  • kahina/trunk/src/org/kahina/test/KahinaTreeTest.java

    r54 r57  
    3737            Document dom = db.parse(file); 
    3838            //TestLayeredTree m1 = TestLayeredTree.importXML(dom); 
    39             KahinaTree m1 = KahinaDbTree.importXML(dom, decider, data); 
     39            KahinaTree m1 = KahinaDbTree.importXML(dom, decider, data, null); 
    4040             
    4141            file = new File("src/org/kahina/test/trale-tree2.xml"); 
     
    4444            dom = db.parse(file); 
    4545            //TestLayeredTree m2 = TestLayeredTree.importXML(dom); 
    46             KahinaTree m2 = KahinaDbTree.importXML(dom, decider, data); 
     46            KahinaTree m2 = KahinaDbTree.importXML(dom, decider, data, m1); 
    4747             
    4848            KahinaTreeView v0 = new KahinaTreeView(); 
  • kahina/trunk/src/org/kahina/visual/tree/KahinaTreeView.java

    r55 r57  
    585585    public void display(KahinaObject treeModel) throws KahinaTypeException 
    586586    { 
    587         if (treeModel.getClass() != this.treeModel.getClass()) 
    588         { 
    589             throw new KahinaTypeException("",""); 
    590         } 
    591587        treeLayer = 0; 
    592588        this.treeModel = (KahinaTree) treeModel; 
     
    598594    public void displaySecondaryTree(KahinaObject treeModel) throws KahinaTypeException 
    599595    { 
    600         if (treeModel.getClass() != this.treeModel.getClass()) 
    601         { 
    602             throw new KahinaTypeException("",""); 
    603         } 
    604596        this.secondaryTreeModel = (KahinaTree) treeModel; 
    605597        ((KahinaTree) this.secondaryTreeModel).setReferenceNode(((KahinaTree) this.treeModel).getReferenceNode());