KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > daffodilwoods > daffodildb > server > sql99 > utils > parser > SessionConditionParser


1 package com.daffodilwoods.daffodildb.server.sql99.utils.parser;
2
3 import com.daffodilwoods.daffodildb.server.sql99.common.*;
4 import com.daffodilwoods.daffodildb.server.sql99.expression.booleanvalueexpression.*;
5 import com.daffodilwoods.daffodildb.utils.parser.*;
6 import com.daffodilwoods.database.resource.*;
7
8 public class SessionConditionParser {
9
10    static ProductionRules ruleBVE;
11
12    public SessionConditionParser() {
13    }
14
15
16
17    public static booleanvalueexpression parseCondition(String JavaDoc inputCondition) throws DException {
18       if (ruleBVE == null) {
19         ruleBVE = Parser.findProductionRule("boolean value expression");
20       }
21       booleanvalueexpression condition = (booleanvalueexpression) ruleBVE.parseUsingTokens(inputCondition);
22       ColumnDetails[] cd = condition.getColumnDetails();
23       for (int i = 0; i < cd.length; i++) {
24          if (cd[i].getType() == TypeConstants.REFERENCE) {
25             cd[i].setDatatype(Datatypes.LONG);
26             cd[i].setSize(Datatypes.LONGSIZE);
27             cd[i].setSessionConditionFlag();
28          }
29       }
30       return condition;
31    }
32
33
34 }
35
Popular Tags