Your browser does not support JavaScript and this site utilizes JavaScript to build content and provide links to additional information. You should either enable JavaScript in your browser settings or use a browser that supports JavaScript in order to take full advantage of this site.
1 17 package org.apache.ldap.server.db.gui; 18 19 20 import org.apache.ldap.common.filter.BranchNode; 21 import org.apache.ldap.common.filter.ExprNode; 22 23 import javax.swing.tree.TreeNode ; 24 import java.util.ArrayList ; 25 import java.util.Collections ; 26 import java.util.Enumeration ; 27 28 29 35 public class ASTNode implements TreeNode  36 { 37 private final ASTNode parent; 38 private final ExprNode exprNode; 39 private final ArrayList children; 40 41 42 public ASTNode( ASTNode parent, ExprNode exprNode ) 43 { 44 this.children = new ArrayList (2); 45 this.exprNode = exprNode; 46 47 if( parent == null ) 48 { 49 this.parent = this; 50 } 51 else 52 { 53 this.parent = parent; 54 } 55 56 try 57 { 58 if( exprNode.isLeaf() ) 59 { 60 return; 61 } 62 63 BranchNode branch = ( BranchNode ) exprNode; 64 ArrayList exprNodes = branch.getChildren(); 65 for ( int ii = 0; ii < exprNodes.size(); ii++ ) 66 { 67 ExprNode child = ( ExprNode ) exprNodes.get(ii); 68 children.add( new ASTNode( this, child ) ); 69 } 70 } 71 catch( Exception e ) 72 { 73 e.printStackTrace(); 74 } 75 } 76 77 78 public Enumeration children() 79 { 80 return Collections.enumeration( children ); 81 } 82 83 84 public boolean getAllowsChildren() 85 { 86 return !exprNode.isLeaf(); 87 } 88 89 90 public TreeNode getChildAt( int childIndex ) 91 { 92 return ( TreeNode ) children.get( childIndex ); 93 } 94 95 96 public int getChildCount() 97 { 98 return children.size(); 99 } 100 101 102 public int getIndex( TreeNode child ) 103 { 104 return children.indexOf( child ); 105 } 106 107 108 public TreeNode getParent() 109 { 110 return parent; 111 } 112 113 114 public boolean isLeaf() 115 { 116 return children.size() <= 0; 117 } 118 119 120 public String toString() 121 { 122 return exprNode.toString(); 123 } 124 125 126 public ExprNode getExprNode() 127 { 128 return exprNode; 129 } 130 } 131
| Popular Tags
|