private SQLExpression toProtoSQL( Geometry geom, ICRS targetCRS, int srid ) { // always use is2d = true (else srid handling will not function properly in mssql) return new SQLArgument( geom, new MSSQLGeometryConverter( null, targetCRS, "" + srid, true ) ); } }
private SQLExpression toProtoSQL( Geometry geom, ICRS targetCRS, int srid ) throws FilterEvaluationException { return new SQLArgument( geom, new PostGISGeometryConverter( null, targetCRS, "" + srid, useLegacyPredicates ) ); } }
@Override protected SQLExpression toProtoSQL( Literal<?> literal ) throws UnmappableException, FilterEvaluationException { if ( literal.getValue().toString().equals( "true" ) || literal.getValue().toString().equals( "false" ) ) { PrimitiveType pt = new PrimitiveType( BOOLEAN ); PrimitiveValue value = new PrimitiveValue( literal.getValue().toString(), pt ); PrimitiveParticleConverter converter = new DefaultPrimitiveConverter( pt, null, false ); SQLArgument argument = new SQLArgument( value, converter ); return argument; } PrimitiveType pt = new PrimitiveType( BaseType.STRING ); PrimitiveValue value = new PrimitiveValue( literal.getValue().toString(), pt ); PrimitiveParticleConverter converter = new DefaultPrimitiveConverter( pt, null, false ); SQLArgument argument = new SQLArgument( value, converter ); return argument; } }
return new SQLArgument( (Geometry) value, null ); } else if ( value instanceof PrimitiveValue ) { return new SQLArgument( (PrimitiveValue) value, null ); } else { return new SQLArgument( (PrimitiveValue) null, null );
/** * Translates the given {@link Literal} into an {@link SQLExpression}. * <p> * The returned literal does not have any type information. Literal types are inferred in * {@link #toProtoSQL(ComparisonOperator)}. * </p> * * @param literal * literal to be translated, must not be <code>null</code> * @return corresponding SQL expression, never <code>null</code> * @throws UnmappableException * if translation is not possible (usually due to unmappable property names) * @throws FilterEvaluationException * if the filter contains invalid {@link ValueReference}s */ protected SQLExpression toProtoSQL( Literal<?> literal ) throws UnmappableException, FilterEvaluationException { Object value = literal.getValue(); if ( value != null ) { if ( value instanceof PrimitiveValue ) { PrimitiveValue pv = (PrimitiveValue) value; return new SQLArgument( pv, null ); } else { throw new UnmappableException( "Only primitive valued literals are currently supported." ); } } PrimitiveParticleConverter converter = new DefaultPrimitiveConverter( new PrimitiveType( STRING ), null, false ); return new SQLArgument( null, converter ); }
pt ); PrimitiveParticleConverter converter = new DefaultPrimitiveConverter( pt, null, false ); sql = new SQLArgument( value, converter ); } else { sql = new SQLColumn( propMapping.getTableAlias(), propMapping.getColumn(), propMapping.getConverter() );
pt ); PrimitiveParticleConverter converter = new DefaultPrimitiveConverter( pt, null, false ); sql = new SQLArgument( value, converter ); } else { sql = new SQLColumn( propMapping.getTableAlias(), propMapping.getColumn(), propMapping.getConverter() );
PrimitiveValue value = new PrimitiveValue( sqlEncoded, pt ); PrimitiveParticleConverter converter = new DefaultPrimitiveConverter( pt, null, propName.isMultiValued() ); SQLArgument argument = new SQLArgument( value, converter ); builder.add( argument );
PrimitiveValue value = new PrimitiveValue( beyond.getDistance().getValue(), pt ); PrimitiveParticleConverter converter = new DefaultPrimitiveConverter( pt, null, false ); SQLArgument argument = new SQLArgument( value, converter ); builder.add( argument ); builder.add( ")=1" ); PrimitiveValue value = new PrimitiveValue( dWithin.getDistance().getValue(), pt ); PrimitiveParticleConverter converter = new DefaultPrimitiveConverter( pt, null, false ); SQLArgument argument = new SQLArgument( value, converter ); builder.add( argument ); builder.add( ")=1" );
PrimitiveValue value = new PrimitiveValue( beyond.getDistance().getValue(), pt ); PrimitiveParticleConverter converter = new DefaultPrimitiveConverter( pt, null, false ); SQLArgument argument = new SQLArgument( value, converter ); builder.add( argument ); builder.add( ")" ); PrimitiveValue value = new PrimitiveValue( dWithin.getDistance().getValue(), pt ); PrimitiveParticleConverter converter = new DefaultPrimitiveConverter( pt, null, false ); SQLArgument argument = new SQLArgument( value, converter ); builder.add( argument ); builder.add( ")" );