Changeset 51
- Timestamp:
- 02/22/10 15:54:12 (2 years ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
kahina/trunk/src/org/kahina/data/tree/KahinaDbTree.java
r50 r51 164 164 throw new KahinaException("SQL error.", e); 165 165 } 166 computeAndStoreLayerInformation(child); 167 } 168 169 private void computeAndStoreLayerInformation(int child) 170 { 166 171 int layer = decider.decideOnLayer(child, this); 167 int virtualParent = parent;172 int virtualParent = getParent(child); 168 173 while (getLayer(virtualParent) > layer) 169 174 { … … 183 188 184 189 @Override 190 public void setLayerDecider(LayerDecider decider) 191 { 192 super.setLayerDecider(decider); 193 recomputeLayers(); 194 } 195 196 public void recomputeLayers() 197 { 198 recomputeLayers(getRootID()); 199 } 200 201 public void recomputeLayers(int nodeID) 202 { 203 computeAndStoreLayerInformation(nodeID); 204 for (int childID : getChildren(nodeID)) 205 { 206 recomputeLayers(childID); 207 } 208 } 209 210 @Override 185 211 public int getParent(int nodeID) 186 212 { … … 270 296 { 271 297 // usually only the case for the root of a partial tree 272 List<Integer> frontLine = get RealChildren(nodeID);298 List<Integer> frontLine = getChildren(nodeID); 273 299 for (int i = 0; i < frontLine.size();) 274 300 { … … 277 303 { 278 304 frontLine.remove(i); 279 frontLine.addAll(i, get RealChildren(child));305 frontLine.addAll(i, getChildren(child)); 280 306 } else 281 307 { … … 289 315 } 290 316 291 private List<Integer> get RealChildren(int nodeID)317 private List<Integer> getChildren(int nodeID) 292 318 { 293 319 try … … 329 355 protected void collectLeaves(int nodeID, List<Integer> leaves) 330 356 { 331 List<Integer> children = get RealChildren(nodeID);357 List<Integer> children = getChildren(nodeID); 332 358 if (children.isEmpty()) 333 359 { kahina/trunk/src/org/kahina/data/tree/KahinaTree.java
r50 r51 34 34 primaryModel = this; 35 35 rootID = -1; 36 } 37 38 public LayerDecider getLayerDecider() 39 { 40 return decider; 41 } 42 43 public void setLayerDecider(LayerDecider decider) 44 { 45 this.decider = decider; 36 46 } 37 47
