Package org.geotools.data.duckdb
Class DuckDBFilterToSQL
- Object
- 
- FilterToSQL
- 
- DuckDBFilterToSQL
 
 
- 
- All Implemented Interfaces:
- ExpressionVisitor,- FilterVisitor
 - Direct Known Subclasses:
- GeoParquetFilterToSQL
 
 public class DuckDBFilterToSQL extends FilterToSQL Base FilterToSQL class for DuckDB with spatial support. Handles conversion of GeoTools filters to DuckDB SQL spatial functions.
- 
- 
Nested Class Summary- 
Nested classes/interfaces inherited from class FilterToSQLFilterToSQL.FieldEncoder
 
- 
 - 
Field Summary- 
Fields inherited from class FilterToSQLcapabilities, currentDimension, currentGeometry, currentSRID, databaseSchema, encodingFunction, escapeBackslash, featureType, fieldEncoder, filterFactory, inEncodingEnabled, inline, IO_ERROR, LOGGER, out, primaryKey, sqlNameEscape
 
- 
 - 
Constructor SummaryConstructors Constructor Description DuckDBFilterToSQL()
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description protected FilterCapabilitiescreateFilterCapabilities()Sets the capabilities of this filter.protected ObjectvisitBBOX(BBOX filter, Expression leftExp, Expression rightExpt, Object extraData)protected ObjectvisitBinarySpatialOperator(BinarySpatialOperator filter, Expression leftExp, Expression rightExpt, Object extraData)Handles the more general case of two generic expressions.protected ObjectvisitBinarySpatialOperator(BinarySpatialOperator filter, PropertyName property, Literal geometry, boolean swapped, Object extraData)Handles the common case of a PropertyName,Literal geometry binary spatial operator.protected ObjectvisitDistanceBufferOperator(DistanceBufferOperator filter, Expression leftExp, Expression rightExpt, Object extraData)protected voidvisitLiteralBoundingBox(BoundingBox bounds)protected voidvisitLiteralGeometry(Literal expression)Subclasses must implement this method in order to encode geometry filters according to the specific database implementationprotected voidvisitLiteralGeometry(Geometry g)protected voidwrite(String fmt, Object... args)- 
Methods inherited from class FilterToSQLcast, encode, encode, encodeBinaryComparisonOperator, encodeToString, encodeToString, escapeLiteral, escapeName, evaluateLiteral, getCapabilities, getDatabaseSchema, getDistanceInNativeUnits, getExpressionType, getFeatureType, getFunctionName, getFunctionReturnType, getParameter, getPrimaryKey, getSqlNameEscape, isBinaryExpression, isEscapeBackslash, isInEncodingEnabled, processLikeLeftOperand, setCapabilities, setDatabaseSchema, setEscapeBackslash, setFeatureType, setFieldEncoder, setInEncodingEnabled, setInline, setPrimaryKey, setSqlNameEscape, setWriter, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitBinaryComparisonOperator, visitBinarySpatialOperator, visitBinaryTemporalOperator, visitBinaryTemporalOperator, visitBinaryTemporalOperator, visitInFunction, visitLiteralTimePeriod, visitNullFilter, writeBinaryExpression, writeBinaryExpressionMember, writeLiteral
 
- 
 
- 
- 
- 
Method Detail- 
createFilterCapabilitiesprotected FilterCapabilities createFilterCapabilities() Description copied from class:FilterToSQLSets the capabilities of this filter.- Overrides:
- createFilterCapabilitiesin class- FilterToSQL
- Returns:
- FilterCapabilities for this Filter
 
 - 
visitLiteralGeometryprotected void visitLiteralGeometry(Literal expression) throws IOException Description copied from class:FilterToSQLSubclasses must implement this method in order to encode geometry filters according to the specific database implementation- Overrides:
- visitLiteralGeometryin class- FilterToSQL
- Throws:
- IOException
 
 - 
visitLiteralGeometryprotected void visitLiteralGeometry(Geometry g) throws IOException - Throws:
- IOException
 
 - 
visitLiteralBoundingBoxprotected void visitLiteralBoundingBox(BoundingBox bounds) throws IOException - Throws:
- IOException
 
 - 
visitBinarySpatialOperatorprotected Object visitBinarySpatialOperator(BinarySpatialOperator filter, PropertyName property, Literal geometry, boolean swapped, Object extraData) Description copied from class:FilterToSQLHandles the common case of a PropertyName,Literal geometry binary spatial operator.- Overrides:
- visitBinarySpatialOperatorin class- FilterToSQL
 
 - 
visitBinarySpatialOperatorprotected Object visitBinarySpatialOperator(BinarySpatialOperator filter, Expression leftExp, Expression rightExpt, Object extraData) Description copied from class:FilterToSQLHandles the more general case of two generic expressions.The most common case is two PropertyName expressions, which happens during a spatial join. - Overrides:
- visitBinarySpatialOperatorin class- FilterToSQL
 
 - 
visitBBOXprotected Object visitBBOX(BBOX filter, Expression leftExp, Expression rightExpt, Object extraData) 
 - 
visitDistanceBufferOperatorprotected Object visitDistanceBufferOperator(DistanceBufferOperator filter, Expression leftExp, Expression rightExpt, Object extraData) 
 
- 
 
-