MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Node.java
1 /*
2  * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; version 2 of the License.
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program; if not, write to the Free Software
15  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
16  */
17 
18 package com.mysql.clusterj.jdbc.antlr.node;
19 
20 import org.antlr.runtime.tree.CommonTree;
21 import org.antlr.runtime.Token;
22 
23 import com.mysql.clusterj.ClusterJFatalInternalException;
24 import com.mysql.clusterj.core.util.I18NHelper;
25 import com.mysql.clusterj.core.util.Logger;
26 import com.mysql.clusterj.core.util.LoggerFactoryService;
27 import com.mysql.clusterj.jdbc.SQLExecutor;
28 import com.mysql.clusterj.query.Predicate;
29 import com.mysql.clusterj.query.QueryDomainType;
30 
31 public class Node extends CommonTree {
32 
34  protected int numberOfParameters = -1;
35 
37  static final I18NHelper local = I18NHelper.getInstance(SQLExecutor.class);
38 
40  static final Logger logger = LoggerFactoryService.getFactory().getInstance(SQLExecutor.class);
41 
42  public Node(Token token) {
43  super(token);
44  }
45 
46  public Node(Node node) {
47  super(node);
48  }
49 
50  @Override
51  public Node dupNode() {
52  return new Node(this);
53  }
54 
55  public Predicate getPredicate(QueryDomainType<?> queryDomainType) {
56  // default behavior is no predicate is possible from the tree
57  return null;
58  }
59 
60  public int getNumberOfParameters() {
61  if (numberOfParameters == -1) {
62  throw new ClusterJFatalInternalException(local.message("ERR_Number_Of_Parameters_Not_Initialized"));
63  }
64  return numberOfParameters;
65  }
66 
67  protected void setNumberOfParameters(int numberOfParameters) {
68  this.numberOfParameters = numberOfParameters;
69  }
70 
71 }