Revision 44951 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.db/org.gvsig.fmap.dal.db.mdb/src/main/java/org/gvsig/fmap/dal/store/mdb/expressionbuilderformatter/Constant.java

View differences:

Constant.java
17 17
 * @author jjdelcerro
18 18
 */
19 19
public class Constant implements Formatter<Value> {
20
    
21
    private static final String FORMAT_ST_GEOMFROMWKB = "ST_GeomFromWKB(({0}), ({1}))";
22
    private static final String FORMAT_ST_GEOMFROMEWKB = "ST_GeomFromEWKB(({0}), ({1}))";
23 20

  
24 21
    private final SQLBuilder sqlbuilder;
25 22
    private final Formatter<Value> formatter;
......
48 45
        Object x = ((ExpressionBuilder.Constant)constant).value();
49 46
        GeometryExpressionBuilder builder = this.sqlbuilder.expression();
50 47
        if( x instanceof byte[] ) {
51
            return builder.bytearray_x((byte[]) x);
48
            return builder.bytearray_0x((byte[]) x);
52 49
        }
53 50
        if( x instanceof Geometry ) {
54 51
            Geometry geometry = (Geometry) x;
55 52
            switch (builder.geometry_support_type()) {
56 53
                case EWKB:
57
                    return MessageFormat.format(
58
                            FORMAT_ST_GEOMFROMEWKB,
59
                            builder.bytearray_x(GeometryUtils.toEWKB(geometry)),
60
                            String.valueOf(builder.srs_id(geometry.getProjection()))
61
                    );
54
                    return builder.bytearray_x(GeometryUtils.toEWKB(geometry));
62 55
                case WKB:
63
                    return MessageFormat.format(
64
                            FORMAT_ST_GEOMFROMWKB,
65
                            builder.bytearray_x(GeometryUtils.toWKB(geometry)),
66
                            String.valueOf(builder.srs_id(geometry.getProjection()))
67
                    );
56
                    return builder.bytearray_x(GeometryUtils.toWKB(geometry));
68 57
                case WKT:
69 58
                default:
70
                    return constant.toString(null);
59
                    return builder.string(GeometryUtils.toWKT(geometry));
71 60
            }
72 61
            
73 62
        }

Also available in: Unified diff