1 19 20 package org.netbeans.modules.xml.axi.visitor; 21 22 import org.netbeans.modules.xml.axi.AXIComponent; 23 import org.netbeans.modules.xml.axi.AXIDocument; 24 import org.netbeans.modules.xml.axi.AXIModel; 25 import org.netbeans.modules.xml.axi.Element; 26 27 31 public class FindUsageVisitor extends AXINonCyclicVisitor { 32 33 Preview p = null; 34 35 Element usedBy = null; 36 37 38 public FindUsageVisitor(AXIModel am) { 39 super(am); 40 p = new Preview(); 41 } 42 43 public Preview findUsages(AXIDocument root) { 44 if(root == null) return null; 45 java.util.List <Element> axiges = root.getElements(); 46 for(Element e : axiges) { 47 findUsages(e); 48 } 49 return p; 50 } 51 52 public Preview findUsages(Element e) { 53 usedBy = e; 54 p.addToUsage(e, usedBy); 55 for(AXIComponent child: e.getChildren()) { 56 child.accept(this); 57 } 58 return p; 59 } 60 61 public void visit(Element e) { 62 if(!canVisit(e)) return; 64 p.addToUsage(e, usedBy); 65 visitChildren(e); 66 } 67 } 68 | Popular Tags |