KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > daffodilwoods > daffodildb > server > sql99 > token > largeobjectlengthtoken


1 package com.daffodilwoods.daffodildb.server.sql99.token;
2
3 import com.daffodilwoods.daffodildb.server.sql99.expression.booleanvalueexpression.*;
4 import com.daffodilwoods.database.resource.*;
5
6 public class largeobjectlengthtoken implements com.daffodilwoods.daffodildb.utils.parser.StatementExecuter, nondelimitertoken, largeobjectlength {
7    public multiplier _multiplier0;
8    public digit[] _Repdigit1;
9
10    public Object JavaDoc run(Object JavaDoc object) throws com.daffodilwoods.database.resource.DException {
11       String JavaDoc unsignedInteger = "";
12       for (int i = 0; i < _Repdigit1.length; i++) {
13          String JavaDoc aa = (String JavaDoc) _Repdigit1[i].run(object);
14          unsignedInteger += aa.trim();
15       }
16       return new Integer JavaDoc(Integer.parseInt(unsignedInteger) * getMultiplierPart());
17    }
18
19    private int getMultiplierPart() throws com.daffodilwoods.database.resource.DException {
20       String JavaDoc str = ( (String JavaDoc) _multiplier0.run(null)).trim();
21       int hashCOde = str.hashCode();
22       switch (hashCOde) {
23          case 75:
24          case 107:
25             return 1000;
26          case 77:
27          case 109:
28             return 1000000;
29          case 71:
30          case 103:
31             return 1000000000;
32       }
33       throw new DException("DSE412", new Object JavaDoc[] {str});
34    }
35
36    public int getType() {
37       return OTHERS;
38    }
39
40    public String JavaDoc toString() {
41       StringBuffer JavaDoc sb = new StringBuffer JavaDoc();
42       sb.append(" ");
43       for (int i = 0; i < _Repdigit1.length; i++) {
44          sb.append(_Repdigit1[i]);
45       }
46       sb.append(" ");
47       sb.append(_multiplier0);
48       return sb.toString();
49    }
50
51    public Object JavaDoc clone() throws CloneNotSupportedException JavaDoc {
52       largeobjectlengthtoken tempClass = new largeobjectlengthtoken();
53       tempClass._multiplier0 = (multiplier) _multiplier0.clone();
54       digit[] temp_Repdigit1 = new digit[_Repdigit1.length];
55       for (int i = 0; i < _Repdigit1.length; i++) {
56          temp_Repdigit1[i] = (digit) _Repdigit1[i].clone();
57       }
58       tempClass._Repdigit1 = temp_Repdigit1;
59       return tempClass;
60    }
61
62 }
63
Popular Tags