Revision 44644 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.spi/src/main/java/org/gvsig/fmap/dal/feature/spi/SQLBuilderBase.java

View differences:

SQLBuilderBase.java
17 17
import org.gvsig.expressionevaluator.ExpressionBuilder.AbstractValue;
18 18
import org.gvsig.expressionevaluator.ExpressionBuilder.ClassVisitorFilter;
19 19
import static org.gvsig.expressionevaluator.ExpressionBuilder.EMPTY_FORMATTER;
20
import org.gvsig.expressionevaluator.ExpressionBuilder.GeometrySupportType;
20
import static org.gvsig.expressionevaluator.ExpressionBuilder.PARAMETER_TYPE_CONSTANT;
21
import static org.gvsig.expressionevaluator.ExpressionBuilder.PARAMETER_TYPE_VARIABLE;
21 22
import org.gvsig.expressionevaluator.ExpressionBuilder.Parameter;
22 23
import org.gvsig.expressionevaluator.ExpressionBuilder.Value;
23 24
import org.gvsig.expressionevaluator.ExpressionBuilder.Variable;
24 25
import org.gvsig.expressionevaluator.ExpressionBuilder.Visitable;
25 26
import org.gvsig.expressionevaluator.ExpressionBuilder.Visitor;
26 27
import org.gvsig.expressionevaluator.ExpressionBuilder.VisitorFilter;
27
import org.gvsig.expressionevaluator.ExpressionEvaluatorLocator;
28 28
import org.gvsig.expressionevaluator.Formatter;
29
import org.gvsig.expressionevaluator.GeometryExpressionBuilder;
30
import org.gvsig.expressionevaluator.GeometryExpressionBuilderHelper.GeometrySupportType;
31
import org.gvsig.expressionevaluator.GeometryExpressionEvaluatorLocator;
29 32
import org.gvsig.fmap.dal.DataStoreParameters;
30 33
import org.gvsig.fmap.dal.DataTypes;
31 34
import org.gvsig.fmap.dal.SQLBuilder;
......
300 303

  
301 304
    public class ColumnBase extends AbstractValue implements Column {
302 305

  
303
        private String name;
306
        private final String name;
304 307
        private TableNameBuilder table;
305 308

  
306 309
        public ColumnBase(TableNameBuilder table, String name) {
......
872 875
            implements SelectBuilder {
873 876

  
874 877
        protected FromBuilder from;
875
        protected ExpressionBuilder where;
878
        protected GeometryExpressionBuilder where;
876 879
        protected long limit = -1;
877 880
        protected long offset = -1;
878 881
        protected List<SelectColumnBuilder> columns;
......
938 941
            }
939 942
            if (this.has_where()) {
940 943
                if( this.where == target ) {
941
                    this.where = (ExpressionBuilder) replacement;
944
                    this.where = (GeometryExpressionBuilder) replacement;
942 945
                } else if( this.where.value() == target ) {
943 946
                    this.where.value(replacement);
944 947
                } else {
......
1000 1003
        }
1001 1004

  
1002 1005
        @Override
1003
        public ExpressionBuilder where() {
1006
        public GeometryExpressionBuilder where() {
1004 1007
            if (this.where == null) {
1005 1008
                this.where = createExpressionBuilder();
1006 1009
            }
......
1468 1471
            extends AbstractStatement
1469 1472
            implements UpdateBuilder {
1470 1473

  
1471
        protected ExpressionBuilder where;
1474
        protected GeometryExpressionBuilder where;
1472 1475
        protected List<UpdateColumnBuilder> columns;
1473 1476
        protected TableNameBuilder table;
1474 1477

  
......
1493 1496
        }
1494 1497

  
1495 1498
        @Override
1496
        public ExpressionBuilder where() {
1499
        public GeometryExpressionBuilder where() {
1497 1500
            if (this.where == null) {
1498 1501
                this.where = createExpressionBuilder();
1499 1502
            }
......
1573 1576
            extends AbstractStatement
1574 1577
            implements DeleteBuilder {
1575 1578

  
1576
        protected ExpressionBuilder where;
1579
        protected GeometryExpressionBuilder where;
1577 1580
        protected TableNameBuilder table;
1578 1581

  
1579 1582
        public DeleteBuilderBase() {
......
1593 1596
        }
1594 1597

  
1595 1598
        @Override
1596
        public ExpressionBuilder where() {
1599
        public GeometryExpressionBuilder where() {
1597 1600
            if (this.where == null) {
1598 1601
                this.where = createExpressionBuilder();
1599 1602
            }
......
2434 2437
        }
2435 2438
    }
2436 2439

  
2437
    protected ExpressionBuilder expressionBuilder;
2440
    protected GeometryExpressionBuilder expressionBuilder;
2438 2441

  
2439 2442
    protected String defaultSchema;
2440 2443
    protected boolean supportSchemas;
......
2482 2485
    protected String STMT_GRANT_privileges_ON_table_TO_role = "GRANT {0} ON {1} TO {2}";
2483 2486

  
2484 2487
    public SQLBuilderBase() {
2485
        this.expressionBuilder = ExpressionEvaluatorLocator.getManager().createExpressionBuilder();
2488
        this.expressionBuilder = GeometryExpressionEvaluatorLocator.getManager().createExpressionBuilder();
2486 2489

  
2487 2490
        this.hasSpatialFunctions = false;
2488 2491
        this.supportSchemas = true;
......
2575 2578
    }
2576 2579
    
2577 2580
    @Override
2578
    public ExpressionBuilder expression() {
2581
    public GeometryExpressionBuilder expression() {
2579 2582
        return this.expressionBuilder;
2580 2583
    }
2581 2584

  
......
2589 2592
        return this.geometrySupportType;
2590 2593
    }
2591 2594

  
2592
    protected ExpressionBuilder createExpressionBuilder() {
2593
        return ExpressionEvaluatorLocator.getManager().createExpressionBuilder();
2595
    protected GeometryExpressionBuilder createExpressionBuilder() {
2596
        return GeometryExpressionEvaluatorLocator.getManager().createExpressionBuilder();
2594 2597
    }
2595 2598

  
2596 2599
    @Override
......
3031 3034
        for (Parameter param : parameters()) {
3032 3035
            String s;
3033 3036
            switch (param.type()) {
3034
                case Constant:
3037
                case PARAMETER_TYPE_CONSTANT:
3035 3038
                    Object theValue = param.value();
3036 3039
                    if (theValue == null) {
3037 3040
                        s = "null";
......
3041 3044
                        s = theValue.toString();
3042 3045
                    }
3043 3046
                    break;
3044
                case Geometry:
3045
                case Variable:
3047
                case PARAMETER_TYPE_VARIABLE:
3046 3048
                default:
3047 3049
                    s = "\"" + param.name() + "\"";
3048 3050
            }

Also available in: Unified diff