Revision 44752 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.geometry/org.gvsig.expressionevaluator.geometry.lib/org.gvsig.expressionevaluator.geometry.lib.impl/src/test/java/org/gvsig/expresionevaluator/impl/TestCodeFormatter.java
TestCodeFormatter.java | ||
---|---|---|
5 | 5 |
import org.apache.commons.lang3.StringUtils; |
6 | 6 |
import org.cresques.cts.IProjection; |
7 | 7 |
import org.gvsig.expressionevaluator.Code; |
8 |
import org.gvsig.expressionevaluator.Code.Caller; |
|
9 | 8 |
import org.gvsig.expressionevaluator.Code.Constant; |
10 | 9 |
import org.gvsig.expressionevaluator.Codes; |
11 | 10 |
import org.gvsig.expressionevaluator.ExpressionEvaluatorLocator; |
... | ... | |
20 | 19 |
import org.gvsig.fmap.geom.exception.CreateGeometryException; |
21 | 20 |
import org.gvsig.fmap.geom.primitive.Point; |
22 | 21 |
import org.gvsig.tools.library.impl.DefaultLibrariesInitializer; |
22 |
import org.gvsig.expressionevaluator.Code.Callable; |
|
23 | 23 |
|
24 | 24 |
public class TestCodeFormatter extends TestCase { |
25 | 25 |
|
... | ... | |
68 | 68 |
// Need for H2Spatial |
69 | 69 |
@Override |
70 | 70 |
public boolean canApply(Code code) { |
71 |
if( code instanceof Caller ) {
|
|
72 |
return StringUtils.equalsIgnoreCase("ST_intersects",((Caller)code).name());
|
|
71 |
if( code instanceof Callable ) {
|
|
72 |
return StringUtils.equalsIgnoreCase("ST_intersects",((Callable)code).name());
|
|
73 | 73 |
} |
74 | 74 |
return false; |
75 | 75 |
} |
76 | 76 |
|
77 | 77 |
@Override |
78 | 78 |
public String format(Code code) { |
79 |
Codes parameters = ((Caller)code).parameters();
|
|
79 |
Codes parameters = ((Callable)code).parameters();
|
|
80 | 80 |
String p1 = parameters.get(0).toString(MyFormatter.this); |
81 | 81 |
String p2 = parameters.get(1).toString(MyFormatter.this); |
82 | 82 |
String r = MessageFormat.format( |
... | ... | |
101 | 101 |
|
102 | 102 |
@Override |
103 | 103 |
public boolean canApply(Code code) { |
104 |
if( code instanceof Caller ) {
|
|
105 |
return StringUtils.equalsIgnoreCase("ST_intersects2",((Caller)code).name());
|
|
104 |
if( code instanceof Callable ) {
|
|
105 |
return StringUtils.equalsIgnoreCase("ST_intersects2",((Callable)code).name());
|
|
106 | 106 |
} |
107 | 107 |
return false; |
108 | 108 |
} |
109 | 109 |
|
110 | 110 |
@Override |
111 | 111 |
public String format(Code code) { |
112 |
Codes parameters = ((Caller)code).parameters();
|
|
112 |
Codes parameters = ((Callable)code).parameters();
|
|
113 | 113 |
String p1 = parameters.get(0).toString(MyFormatter.this); |
114 | 114 |
String p2 = parameters.get(1).toString(MyFormatter.this); |
115 | 115 |
String r = MessageFormat.format( |
... | ... | |
127 | 127 |
// Need for SpatiaLite |
128 | 128 |
@Override |
129 | 129 |
public boolean canApply(Code code) { |
130 |
if( code instanceof Caller ) {
|
|
131 |
if( StringUtils.equalsIgnoreCase("DECODE",((Caller)code).name()) ) {
|
|
132 |
Codes parameters = ((Caller)code).parameters();
|
|
130 |
if( code instanceof Callable ) {
|
|
131 |
if( StringUtils.equalsIgnoreCase("DECODE",((Callable)code).name()) ) {
|
|
132 |
Codes parameters = ((Callable)code).parameters();
|
|
133 | 133 |
Code code_p1 = parameters.get(0); |
134 | 134 |
Code code_p2 = parameters.get(1); |
135 | 135 |
if( code_p1 instanceof Constant && code_p2 instanceof Constant ) { |
... | ... | |
147 | 147 |
|
148 | 148 |
@Override |
149 | 149 |
public String format(Code code) { |
150 |
Codes parameters = ((Caller)code).parameters();
|
|
150 |
Codes parameters = ((Callable)code).parameters();
|
|
151 | 151 |
Object p1 = ((Constant)parameters.get(0)).value(); |
152 | 152 |
return "x'"+ (String)p1 + "'"; |
153 | 153 |
} |
... | ... | |
157 | 157 |
// Need for H2Spatial |
158 | 158 |
@Override |
159 | 159 |
public boolean canApply(Code code) { |
160 |
if( code instanceof Caller ) {
|
|
161 |
return StringUtils.equalsIgnoreCase("IFNULL",((Caller)code).name());
|
|
160 |
if( code instanceof Callable ) {
|
|
161 |
return StringUtils.equalsIgnoreCase("IFNULL",((Callable)code).name());
|
|
162 | 162 |
} |
163 | 163 |
return false; |
164 | 164 |
} |
165 | 165 |
|
166 | 166 |
@Override |
167 | 167 |
public String format(Code code) { |
168 |
Codes parameters = ((Caller)code).parameters();
|
|
168 |
Codes parameters = ((Callable)code).parameters();
|
|
169 | 169 |
String p1 = parameters.get(0).toString(MyFormatter.this); |
170 | 170 |
String p2 = parameters.get(1).toString(MyFormatter.this); |
171 | 171 |
String p3 = parameters.get(2).toString(MyFormatter.this); |
... | ... | |
183 | 183 |
// Need for SpatiaLite |
184 | 184 |
@Override |
185 | 185 |
public boolean canApply(Code code) { |
186 |
if( code instanceof Caller ) {
|
|
187 |
return StringUtils.equalsIgnoreCase("ILIKE",((Caller)code).name());
|
|
186 |
if( code instanceof Callable ) {
|
|
187 |
return StringUtils.equalsIgnoreCase("ILIKE",((Callable)code).name());
|
|
188 | 188 |
} |
189 | 189 |
return false; |
190 | 190 |
} |
191 | 191 |
|
192 | 192 |
@Override |
193 | 193 |
public String format(Code code) { |
194 |
Codes parameters = ((Caller)code).parameters();
|
|
194 |
Codes parameters = ((Callable)code).parameters();
|
|
195 | 195 |
String p1 = parameters.get(0).toString(MyFormatter.this); |
196 | 196 |
String p2 = parameters.get(1).toString(MyFormatter.this); |
197 | 197 |
String r = MessageFormat.format( |
... | ... | |
207 | 207 |
// Need for H2Spatial |
208 | 208 |
@Override |
209 | 209 |
public boolean canApply(Code code) { |
210 |
if( code instanceof Caller ) {
|
|
211 |
return StringUtils.equalsIgnoreCase("NOT_IS_NULL",((Caller)code).name());
|
|
210 |
if( code instanceof Callable ) {
|
|
211 |
return StringUtils.equalsIgnoreCase("NOT_IS_NULL",((Callable)code).name());
|
|
212 | 212 |
} |
213 | 213 |
return false; |
214 | 214 |
} |
215 | 215 |
|
216 | 216 |
@Override |
217 | 217 |
public String format(Code code) { |
218 |
Codes parameters = ((Caller)code).parameters();
|
|
218 |
Codes parameters = ((Callable)code).parameters();
|
|
219 | 219 |
String p1 = parameters.get(0).toString(MyFormatter.this); |
220 | 220 |
String r = MessageFormat.format( |
221 | 221 |
"( ({0}) IS NOT NULL )", |
Also available in: Unified diff