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 @ 46047
History | View | Annotate | Download (12.1 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.programming.IFFunction; |
67 |
import org.gvsig.expressionevaluator.impl.function.string.AsciiFunction; |
68 |
import org.gvsig.expressionevaluator.impl.function.string.CharFunction; |
69 |
import org.gvsig.expressionevaluator.impl.function.string.ConcatFunction; |
70 |
import org.gvsig.expressionevaluator.impl.function.typeconversion.DecodeFunction; |
71 |
import org.gvsig.expressionevaluator.impl.function.typeconversion.JsonValueFunction; |
72 |
import org.gvsig.expressionevaluator.impl.function.string.FormatFunction; |
73 |
import org.gvsig.expressionevaluator.impl.function.string.InstrFunction; |
74 |
import org.gvsig.expressionevaluator.impl.function.string.LTrimFunction; |
75 |
import org.gvsig.expressionevaluator.impl.function.string.LeftFunction; |
76 |
import org.gvsig.expressionevaluator.impl.function.string.LengthFunction; |
77 |
import org.gvsig.expressionevaluator.impl.function.string.LocateFunction; |
78 |
import org.gvsig.expressionevaluator.impl.function.string.LowerFunction; |
79 |
import org.gvsig.expressionevaluator.impl.function.string.LpadFunction; |
80 |
import org.gvsig.expressionevaluator.impl.function.string.MidFunction; |
81 |
import org.gvsig.expressionevaluator.impl.function.string.RTrimFunction; |
82 |
import org.gvsig.expressionevaluator.impl.function.string.RepeatFunction; |
83 |
import org.gvsig.expressionevaluator.impl.function.string.ReplaceFunction; |
84 |
import org.gvsig.expressionevaluator.impl.function.string.ReverseFunction; |
85 |
import org.gvsig.expressionevaluator.impl.function.string.ReverseInStrFunction; |
86 |
import org.gvsig.expressionevaluator.impl.function.string.RightFunction; |
87 |
import org.gvsig.expressionevaluator.impl.function.string.RpadFunction; |
88 |
import org.gvsig.expressionevaluator.impl.function.string.SpaceFunction; |
89 |
import org.gvsig.expressionevaluator.impl.function.string.SubstringFunction; |
90 |
import org.gvsig.expressionevaluator.impl.function.string.TrimFunction; |
91 |
import org.gvsig.expressionevaluator.impl.function.string.UUIDFunction; |
92 |
import org.gvsig.expressionevaluator.impl.function.string.UpperFunction; |
93 |
import org.gvsig.expressionevaluator.impl.function.typeconversion.CastFunction; |
94 |
import org.gvsig.expressionevaluator.impl.function.typeconversion.EncodeFunction; |
95 |
import org.gvsig.expressionevaluator.impl.function.typeconversion.ToDoubleFunction; |
96 |
import org.gvsig.expressionevaluator.impl.function.typeconversion.ToFloatFunction; |
97 |
import org.gvsig.expressionevaluator.impl.function.typeconversion.ToIntegerFunction; |
98 |
import org.gvsig.expressionevaluator.impl.function.typeconversion.ToJsonFunction; |
99 |
import org.gvsig.expressionevaluator.impl.function.typeconversion.ToLongFunction; |
100 |
import org.gvsig.expressionevaluator.impl.function.typeconversion.ToStrFunction; |
101 |
import org.gvsig.expressionevaluator.spi.AbstractSymbolTable; |
102 |
|
103 |
/**
|
104 |
*
|
105 |
* @author jjdelcerro
|
106 |
*/
|
107 |
public class SQLSymbolTable extends AbstractSymbolTable { |
108 |
static final String NAME = "SQL"; |
109 |
|
110 |
@SuppressWarnings("OverridableMethodCallInConstructor") |
111 |
public SQLSymbolTable() {
|
112 |
super(NAME);
|
113 |
|
114 |
this.addOperator(new AndOperator()); |
115 |
this.addOperator(new AddOperator()); |
116 |
this.addOperator(new DivOperator()); |
117 |
this.addOperator(new EqOperator()); |
118 |
this.addOperator(new IsOperator()); |
119 |
this.addOperator(new GeOperator()); |
120 |
this.addOperator(new GtOperator()); |
121 |
this.addOperator(new LeOperator()); |
122 |
this.addOperator(new LtOperator()); |
123 |
this.addOperator(new NeOperator()); |
124 |
this.addOperator(new MulOperator()); |
125 |
this.addOperator(new NeOperator()); |
126 |
this.addOperator(new NotOperator()); |
127 |
this.addOperator(new OrOperator()); |
128 |
this.addOperator(new SubstOperator()); |
129 |
this.addOperator(new ConcatOperator()); |
130 |
|
131 |
this.addOperator(new IlikeOperator()); |
132 |
this.addOperator(new LikeOperator()); |
133 |
this.addOperator(new RegExpOperator()); |
134 |
this.addOperator(new NegOperator()); |
135 |
|
136 |
this.addFunction(new ACosFunction()); |
137 |
this.addFunction(new ASinFunction()); |
138 |
this.addFunction(new ATanFunction()); |
139 |
this.addFunction(new AbsFunction()); |
140 |
this.addFunction(new BitAndFunction()); |
141 |
this.addFunction(new BitOrFunction()); |
142 |
this.addFunction(new BitXorFunction()); |
143 |
this.addFunction(new BitGetFunction()); |
144 |
this.addFunction(new CeilFunction()); |
145 |
this.addFunction(new CosFunction()); |
146 |
this.addFunction(new CoshFunction()); |
147 |
this.addFunction(new CotFunction()); |
148 |
this.addFunction(new DegreesFunction()); |
149 |
this.addFunction(new ExpFunction()); |
150 |
this.addFunction(new FloorFunction()); |
151 |
this.addFunction(new Log10Function()); |
152 |
this.addFunction(new LogFunction()); |
153 |
this.addFunction(new PiFunction()); |
154 |
this.addFunction(new PowFunction()); |
155 |
this.addFunction(new RadiansFunction()); |
156 |
this.addFunction(new RandFunction()); |
157 |
this.addFunction(new RoundFunction()); |
158 |
this.addFunction(new SignFunction()); |
159 |
this.addFunction(new SinFunction()); |
160 |
this.addFunction(new SinhFunction()); |
161 |
this.addFunction(new SqrtFunction()); |
162 |
this.addFunction(new TanFunction()); |
163 |
this.addFunction(new TanhFunction()); |
164 |
this.addFunction(new ZeroFunction()); |
165 |
|
166 |
this.addFunction(new AsciiFunction()); |
167 |
this.addFunction(new CharFunction()); |
168 |
this.addFunction(new ConcatFunction()); |
169 |
this.addFunction(new InstrFunction()); |
170 |
this.addFunction(new LTrimFunction()); |
171 |
this.addFunction(new LeftFunction()); |
172 |
this.addFunction(new LengthFunction()); |
173 |
this.addFunction(new LocateFunction()); |
174 |
this.addFunction(new LowerFunction()); |
175 |
this.addFunction(new LpadFunction()); |
176 |
this.addFunction(new RTrimFunction()); |
177 |
this.addFunction(new RepeatFunction()); |
178 |
this.addFunction(new ReplaceFunction()); |
179 |
this.addFunction(new RightFunction()); |
180 |
this.addFunction(new RpadFunction()); |
181 |
this.addFunction(new SpaceFunction()); |
182 |
this.addFunction(new SubstringFunction()); |
183 |
this.addFunction(new TrimFunction()); |
184 |
this.addFunction(new UpperFunction()); |
185 |
this.addFunction(new MidFunction()); |
186 |
this.addFunction(new ReverseInStrFunction()); |
187 |
this.addFunction(new ReverseFunction()); |
188 |
|
189 |
this.addFunction(new CurrentTimestampFunction()); |
190 |
this.addFunction(new CurrentTimeFunction()); |
191 |
this.addFunction(new CurrentDateFunction()); |
192 |
this.addFunction(new ToDateFunction()); |
193 |
this.addFunction(new ToTimestampFunction()); |
194 |
this.addFunction(new DateDiffFunction()); |
195 |
this.addFunction(new DateAddFunction()); |
196 |
this.addFunction(new DateFunction()); |
197 |
this.addFunction(new TimeFunction()); |
198 |
this.addFunction(new TimestampFunction()); |
199 |
this.addFunction(new ExtractFunction()); |
200 |
|
201 |
this.addFunction(new IIFFunction()); |
202 |
this.addFunction(new IFFunction()); |
203 |
this.addFunction(new IFNULLFunction()); |
204 |
this.addFunction(new FormatFunction()); |
205 |
|
206 |
this.addFunction(new CastFunction()); |
207 |
this.addFunction(new DecodeFunction()); |
208 |
this.addFunction(new EncodeFunction()); |
209 |
this.addFunction(new JsonValueFunction()); |
210 |
this.addFunction(new ToStrFunction()); |
211 |
this.addFunction(new ToDoubleFunction()); |
212 |
this.addFunction(new ToFloatFunction()); |
213 |
this.addFunction(new ToIntegerFunction()); |
214 |
this.addFunction(new ToLongFunction()); |
215 |
|
216 |
this.addFunction(new ModFunction()); |
217 |
|
218 |
this.addFunction(new ToJsonFunction()); |
219 |
this.addFunction(new UUIDFunction()); |
220 |
} |
221 |
|
222 |
private void addOperator(Function operator) { |
223 |
this.addFunction(operator);
|
224 |
} |
225 |
|
226 |
} |