KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > oracle > toplink > essentials > internal > parsing > FromNode


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the "License"). You may not use this file except
5  * in compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * glassfish/bootstrap/legal/CDDLv1.0.txt or
9  * https://glassfish.dev.java.net/public/CDDLv1.0.html.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * HEADER in each file and include the License file at
15  * glassfish/bootstrap/legal/CDDLv1.0.txt. If applicable,
16  * add the following below this CDDL HEADER, with the
17  * fields enclosed by brackets "[]" replaced with your
18  * own identifying information: Portions Copyright [yyyy]
19  * [name of copyright owner]
20  */

21 // Copyright (c) 1998, 2005, Oracle. All rights reserved.
22
package oracle.toplink.essentials.internal.parsing;
23
24 import java.util.*;
25
26 /**
27  * INTERNAL
28  * <p><b>Purpose</b>: Represent a FROM
29  * <p><b>Responsibilities</b>:<ul>
30  * <li> Determines the context for the Parse Tree
31  * <li> Determine the reference class for a query
32  * <li> Handle any FROM ... IN clauses
33  * </ul>
34  * @author Jon Driscoll
35  * @since TopLink 5.0
36  */

37 public class FromNode extends MajorNode {
38
39     private List declarations;
40
41     public String JavaDoc getFirstVariable() {
42         String JavaDoc variable = null;
43         if ((declarations != null) && (declarations.size() > 0)) {
44             variable = ((IdentificationVariableDeclNode)declarations.get(0)).getCanonicalVariableName();
45         }
46         return variable;
47     }
48
49     public List getDeclarations() {
50         return declarations;
51     }
52     
53     public void setDeclarations(List decls) {
54         declarations = decls;
55     }
56     
57     /**
58      * INTERNAL
59      * Validate the current node.
60      */

61     public void validate(ParseTreeContext context) {
62         for (Iterator i = declarations.iterator(); i.hasNext();) {
63             Node decl = (Node)i.next();
64             decl.validate(context);
65         }
66     }
67 }
68
Popular Tags