Statistics
| Revision:

svn-gvsig-desktop / trunk / org.gvsig.desktop / org.gvsig.desktop.library / org.gvsig.expressionevaluator / org.gvsig.expressionevaluator.lib / org.gvsig.expressionevaluator.lib.impl / src / main / java / org / gvsig / expressionevaluator / impl / symboltable / SQLSymbolTable.java @ 44885

History | View | Annotate | Download (11.4 KB)

1
package org.gvsig.expressionevaluator.impl.symboltable;
2

    
3
import org.gvsig.expressionevaluator.Function;
4
import org.gvsig.expressionevaluator.impl.function.date.CurrentDateFunction;
5
import org.gvsig.expressionevaluator.impl.function.date.CurrentTimeFunction;
6
import org.gvsig.expressionevaluator.impl.function.date.DateAddFunction;
7
import org.gvsig.expressionevaluator.impl.function.date.DateDiffFunction;
8
import org.gvsig.expressionevaluator.impl.function.date.ToDateFunction;
9
import org.gvsig.expressionevaluator.impl.function.date.CurrentTimestampFunction;
10
import org.gvsig.expressionevaluator.impl.function.date.DateFunction;
11
import org.gvsig.expressionevaluator.impl.function.date.ExtractFunction;
12
import org.gvsig.expressionevaluator.impl.function.date.TimeFunction;
13
import org.gvsig.expressionevaluator.impl.function.date.TimestampFunction;
14
import org.gvsig.expressionevaluator.impl.function.date.ToTimestampFunction;
15
import org.gvsig.expressionevaluator.impl.function.numeric.ACosFunction;
16
import org.gvsig.expressionevaluator.impl.function.numeric.ASinFunction;
17
import org.gvsig.expressionevaluator.impl.function.numeric.ATanFunction;
18
import org.gvsig.expressionevaluator.impl.function.numeric.AbsFunction;
19
import org.gvsig.expressionevaluator.impl.function.numeric.BitAndFunction;
20
import org.gvsig.expressionevaluator.impl.function.numeric.BitGetFunction;
21
import org.gvsig.expressionevaluator.impl.function.numeric.BitOrFunction;
22
import org.gvsig.expressionevaluator.impl.function.numeric.BitXorFunction;
23
import org.gvsig.expressionevaluator.impl.function.numeric.CeilFunction;
24
import org.gvsig.expressionevaluator.impl.function.numeric.CosFunction;
25
import org.gvsig.expressionevaluator.impl.function.numeric.CoshFunction;
26
import org.gvsig.expressionevaluator.impl.function.numeric.CotFunction;
27
import org.gvsig.expressionevaluator.impl.function.numeric.DegreesFunction;
28
import org.gvsig.expressionevaluator.impl.function.numeric.ExpFunction;
29
import org.gvsig.expressionevaluator.impl.function.numeric.FloorFunction;
30
import org.gvsig.expressionevaluator.impl.function.numeric.Log10Function;
31
import org.gvsig.expressionevaluator.impl.function.numeric.LogFunction;
32
import org.gvsig.expressionevaluator.impl.function.numeric.ModFunction;
33
import org.gvsig.expressionevaluator.impl.function.numeric.PiFunction;
34
import org.gvsig.expressionevaluator.impl.function.numeric.PowFunction;
35
import org.gvsig.expressionevaluator.impl.function.numeric.RadiansFunction;
36
import org.gvsig.expressionevaluator.impl.function.numeric.RandFunction;
37
import org.gvsig.expressionevaluator.impl.function.numeric.RoundFunction;
38
import org.gvsig.expressionevaluator.impl.function.numeric.SignFunction;
39
import org.gvsig.expressionevaluator.impl.function.numeric.SinFunction;
40
import org.gvsig.expressionevaluator.impl.function.numeric.SinhFunction;
41
import org.gvsig.expressionevaluator.impl.function.numeric.SqrtFunction;
42
import org.gvsig.expressionevaluator.impl.function.numeric.TanFunction;
43
import org.gvsig.expressionevaluator.impl.function.numeric.TanhFunction;
44
import org.gvsig.expressionevaluator.impl.function.numeric.ZeroFunction;
45
import org.gvsig.expressionevaluator.impl.function.programming.IFNULLFunction;
46
import org.gvsig.expressionevaluator.impl.function.programming.IIFFunction;
47
import org.gvsig.expressionevaluator.impl.function.operator.AddOperator;
48
import org.gvsig.expressionevaluator.impl.function.operator.AndOperator;
49
import org.gvsig.expressionevaluator.impl.function.operator.ConcatOperator;
50
import org.gvsig.expressionevaluator.impl.function.operator.DivOperator;
51
import org.gvsig.expressionevaluator.impl.function.operator.EqOperator;
52
import org.gvsig.expressionevaluator.impl.function.operator.GeOperator;
53
import org.gvsig.expressionevaluator.impl.function.operator.GtOperator;
54
import org.gvsig.expressionevaluator.impl.function.operator.IsOperator;
55
import org.gvsig.expressionevaluator.impl.function.operator.LeOperator;
56
import org.gvsig.expressionevaluator.impl.function.operator.LtOperator;
57
import org.gvsig.expressionevaluator.impl.function.operator.MulOperator;
58
import org.gvsig.expressionevaluator.impl.function.operator.NeOperator;
59
import org.gvsig.expressionevaluator.impl.function.operator.NegOperator;
60
import org.gvsig.expressionevaluator.impl.function.operator.NotOperator;
61
import org.gvsig.expressionevaluator.impl.function.operator.OrOperator;
62
import org.gvsig.expressionevaluator.impl.function.operator.RegExpOperator;
63
import org.gvsig.expressionevaluator.impl.function.operator.SubstOperator;
64
import org.gvsig.expressionevaluator.impl.function.predicate.IlikeOperator;
65
import org.gvsig.expressionevaluator.impl.function.predicate.LikeOperator;
66
import org.gvsig.expressionevaluator.impl.function.string.AsciiFunction;
67
import org.gvsig.expressionevaluator.impl.function.string.CharFunction;
68
import org.gvsig.expressionevaluator.impl.function.string.ConcatFunction;
69
import org.gvsig.expressionevaluator.impl.function.typeconversion.DecodeFunction;
70
import org.gvsig.expressionevaluator.impl.function.string.FormatFunction;
71
import org.gvsig.expressionevaluator.impl.function.string.InstrFunction;
72
import org.gvsig.expressionevaluator.impl.function.string.LTrimFunction;
73
import org.gvsig.expressionevaluator.impl.function.string.LeftFunction;
74
import org.gvsig.expressionevaluator.impl.function.string.LengthFunction;
75
import org.gvsig.expressionevaluator.impl.function.string.LocateFunction;
76
import org.gvsig.expressionevaluator.impl.function.string.LowerFunction;
77
import org.gvsig.expressionevaluator.impl.function.string.LpadFunction;
78
import org.gvsig.expressionevaluator.impl.function.string.MidFunction;
79
import org.gvsig.expressionevaluator.impl.function.string.PositionFunction;
80
import org.gvsig.expressionevaluator.impl.function.string.RTrimFunction;
81
import org.gvsig.expressionevaluator.impl.function.string.RepeatFunction;
82
import org.gvsig.expressionevaluator.impl.function.string.ReplaceFunction;
83
import org.gvsig.expressionevaluator.impl.function.string.RightFunction;
84
import org.gvsig.expressionevaluator.impl.function.string.RpadFunction;
85
import org.gvsig.expressionevaluator.impl.function.string.SpaceFunction;
86
import org.gvsig.expressionevaluator.impl.function.string.SubstringFunction;
87
import org.gvsig.expressionevaluator.impl.function.string.TrimFunction;
88
import org.gvsig.expressionevaluator.impl.function.string.UpperFunction;
89
import org.gvsig.expressionevaluator.impl.function.typeconversion.CastFunction;
90
import org.gvsig.expressionevaluator.impl.function.typeconversion.ToDoubleFunction;
91
import org.gvsig.expressionevaluator.impl.function.typeconversion.ToFloatFunction;
92
import org.gvsig.expressionevaluator.impl.function.typeconversion.ToIntegerFunction;
93
import org.gvsig.expressionevaluator.impl.function.typeconversion.ToLongFunction;
94
import org.gvsig.expressionevaluator.impl.function.typeconversion.ToStrFunction;
95
import org.gvsig.expressionevaluator.spi.AbstractSymbolTable;
96

    
97
/**
98
 *
99
 * @author jjdelcerro
100
 */
101
public class SQLSymbolTable extends AbstractSymbolTable {
102
    static final String NAME = "SQL";
103
    
104
    @SuppressWarnings("OverridableMethodCallInConstructor")
105
    public SQLSymbolTable() {
106
        super(NAME);
107
        
108
        this.addOperator(new AndOperator());
109
        this.addOperator(new AddOperator());
110
        this.addOperator(new DivOperator());
111
        this.addOperator(new EqOperator());
112
        this.addOperator(new IsOperator());
113
        this.addOperator(new GeOperator());
114
        this.addOperator(new GtOperator());
115
        this.addOperator(new LeOperator());
116
        this.addOperator(new LtOperator());
117
        this.addOperator(new NeOperator());
118
        this.addOperator(new MulOperator());
119
        this.addOperator(new NeOperator());
120
        this.addOperator(new NotOperator());
121
        this.addOperator(new OrOperator());
122
        this.addOperator(new SubstOperator());
123
        this.addOperator(new ConcatOperator());
124
        
125
        this.addOperator(new IlikeOperator());
126
        this.addOperator(new LikeOperator());
127
        this.addOperator(new RegExpOperator());
128
        this.addOperator(new NegOperator());
129
        
130
        this.addFunction(new ACosFunction());
131
        this.addFunction(new ASinFunction());
132
        this.addFunction(new ATanFunction());
133
        this.addFunction(new AbsFunction());
134
        this.addFunction(new BitAndFunction());
135
        this.addFunction(new BitOrFunction());
136
        this.addFunction(new BitXorFunction());
137
        this.addFunction(new BitGetFunction());
138
        this.addFunction(new CeilFunction());
139
        this.addFunction(new CosFunction());
140
        this.addFunction(new CoshFunction());
141
        this.addFunction(new CotFunction());
142
        this.addFunction(new DegreesFunction());
143
        this.addFunction(new ExpFunction());
144
        this.addFunction(new FloorFunction());
145
        this.addFunction(new Log10Function());
146
        this.addFunction(new LogFunction());
147
        this.addFunction(new PiFunction());
148
        this.addFunction(new PowFunction());
149
        this.addFunction(new RadiansFunction());
150
        this.addFunction(new RandFunction());
151
        this.addFunction(new RoundFunction());
152
        this.addFunction(new SignFunction());
153
        this.addFunction(new SinFunction());
154
        this.addFunction(new SinhFunction());
155
        this.addFunction(new SqrtFunction());
156
        this.addFunction(new TanFunction());
157
        this.addFunction(new TanhFunction());
158
        this.addFunction(new ZeroFunction());
159
        
160
        this.addFunction(new AsciiFunction());
161
        this.addFunction(new CharFunction());
162
        this.addFunction(new ConcatFunction());
163
        this.addFunction(new InstrFunction());
164
        this.addFunction(new LTrimFunction());
165
        this.addFunction(new LeftFunction());
166
        this.addFunction(new LengthFunction());
167
        this.addFunction(new LocateFunction());
168
        this.addFunction(new LowerFunction());
169
        this.addFunction(new LpadFunction());
170
        this.addFunction(new PositionFunction());
171
        this.addFunction(new RTrimFunction());
172
        this.addFunction(new RepeatFunction());
173
        this.addFunction(new ReplaceFunction());
174
        this.addFunction(new RightFunction());
175
        this.addFunction(new RpadFunction());
176
        this.addFunction(new SpaceFunction());
177
        this.addFunction(new SubstringFunction());
178
        this.addFunction(new TrimFunction());
179
        this.addFunction(new UpperFunction());
180
        this.addFunction(new MidFunction());
181
        
182
        this.addFunction(new CurrentTimestampFunction());
183
        this.addFunction(new CurrentTimeFunction());
184
        this.addFunction(new CurrentDateFunction());
185
        this.addFunction(new ToDateFunction());
186
        this.addFunction(new ToTimestampFunction());
187
        this.addFunction(new DateDiffFunction());
188
        this.addFunction(new DateAddFunction());
189
        this.addFunction(new DateFunction());
190
        this.addFunction(new TimeFunction());
191
        this.addFunction(new TimestampFunction());
192
        this.addFunction(new ExtractFunction());
193

    
194
        this.addFunction(new IIFFunction());
195
        this.addFunction(new IFNULLFunction());
196
        this.addFunction(new FormatFunction());
197

    
198
        this.addFunction(new CastFunction());
199
        this.addFunction(new DecodeFunction());
200
        this.addFunction(new ToStrFunction());
201
        this.addFunction(new ToDoubleFunction());
202
        this.addFunction(new ToFloatFunction());
203
        this.addFunction(new ToIntegerFunction());
204
        this.addFunction(new ToLongFunction());
205
        
206
        this.addFunction(new ModFunction());
207
        
208
    }
209

    
210
    private void addOperator(Function operator) {
211
        this.addFunction(operator);
212
    }
213
    
214
}