Revision 45366 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.impl/src/main/java/org/gvsig/fmap/dal/feature/impl/DefaultFeatureQueryOrder.java
DefaultFeatureQueryOrder.java | ||
---|---|---|
30 | 30 |
import java.util.NoSuchElementException; |
31 | 31 |
import org.apache.commons.lang3.StringUtils; |
32 | 32 |
import org.gvsig.expressionevaluator.Expression; |
33 |
import org.gvsig.expressionevaluator.ExpressionEvaluator; |
|
33 | 34 |
import org.gvsig.fmap.dal.exception.DataEvaluatorRuntimeException; |
34 | 35 |
import org.gvsig.fmap.dal.feature.Feature; |
35 | 36 |
import org.gvsig.fmap.dal.feature.FeatureQueryOrder; |
36 |
import org.gvsig.fmap.dal.impl.expressionevaluator.DefaultExpressionEvaluator; |
|
37 |
import org.gvsig.fmap.dal.impl.expressionevaluator.DefaultFeatureExpressionEvaluator;
|
|
37 | 38 |
import org.gvsig.tools.ToolsLocator; |
38 | 39 |
import org.gvsig.tools.dynobject.DynStruct; |
39 | 40 |
import org.gvsig.tools.evaluator.Evaluator; |
... | ... | |
107 | 108 |
throws PersistenceException { |
108 | 109 |
state.set("attributeName", this.attributeName); |
109 | 110 |
state.set("ascending", this.ascending); |
110 |
if(evaluator instanceof Persistent){
|
|
111 |
if(evaluator instanceof ExpressionEvaluator){
|
|
111 | 112 |
state.set("evaluator", evaluator); |
112 | 113 |
} else { |
113 | 114 |
state.setNull("evaluator"); |
... | ... | |
198 | 199 |
|
199 | 200 |
public Object add(Expression expr, boolean ascending) { |
200 | 201 |
|
201 |
Evaluator evaluator = new DefaultExpressionEvaluator(expr); |
|
202 |
Evaluator evaluator = new DefaultFeatureExpressionEvaluator(expr);
|
|
202 | 203 |
FeatureQueryOrderMember member = new FeatureQueryOrderMemberImpl( |
203 | 204 |
evaluator, |
204 | 205 |
ascending); |
... | ... | |
354 | 355 |
public static void registerPersistent() { |
355 | 356 |
DynStruct definitionMember |
356 | 357 |
= ToolsLocator.getPersistenceManager() |
357 |
.addDefinition(FeatureQueryOrderMember.class, |
|
358 |
.addDefinition(FeatureQueryOrderMemberImpl.class,
|
|
358 | 359 |
"FeatureQueryOrderMember", |
359 | 360 |
"FeatureQueryOrderMember Persistent definition", |
360 | 361 |
null, |
361 | 362 |
null); |
362 | 363 |
|
363 | 364 |
definitionMember.addDynFieldString("attributeName").setClassOfValue(String.class).setMandatory(false); |
364 |
definitionMember.addDynFieldObject("expression").setClassOfValue(Expression.class).setMandatory(false);
|
|
365 |
definitionMember.addDynFieldObject("evaluator").setClassOfValue(ExpressionEvaluator.class).setMandatory(false);
|
|
365 | 366 |
definitionMember.addDynFieldBoolean("ascending").setMandatory(false); |
366 | 367 |
|
367 | 368 |
DynStruct definition |
... | ... | |
372 | 373 |
null, |
373 | 374 |
null); |
374 | 375 |
|
375 |
definition.addDynFieldList("members").setClassOfItems(FeatureQueryOrderMember.class); |
|
376 |
definition.addDynFieldList("members").setClassOfItems(FeatureQueryOrderMemberImpl.class);
|
|
376 | 377 |
|
377 | 378 |
} |
378 | 379 |
|
Also available in: Unified diff