public class PostgisPG93Dialect extends PostgreSQL93Dialect implements SpatialDialect
PostgreSQL93Dialect
to add support for the Postgis spatial types, functions and operators .
Created by Karel Maesen, Geovise BVBA on 01/11/16.
CLOSED_QUOTE, DEFAULT_BATCH_SIZE, LEGACY_LOB_MERGE_STRATEGY, NEW_LOCATOR_LOB_MERGE_STRATEGY, NO_BATCH, QUOTE, STANDARD_DEFAULT_BATCH_LOAD_SIZING_STRATEGY, STREAM_XFER_LOB_MERGE_STRATEGY
Constructor and Description |
---|
PostgisPG93Dialect()
Creates an instance
|
Modifier and Type | Method and Description |
---|---|
void |
contributeTypes(TypeContributions typeContributions,
ServiceRegistry serviceRegistry)
Allows the Dialect to contribute additional types
|
java.lang.String |
getDWithinSQL(java.lang.String columnName)
Returns The SQL fragment when parsing a
DWithinExpression . |
java.lang.String |
getHavingSridSQL(java.lang.String columnName)
Returns the SQL fragment when parsing a
HavingSridExpression . |
java.lang.String |
getIsEmptySQL(java.lang.String columnName,
boolean isEmpty)
Returns the SQL fragment when parsing a
IsEmptyExpression or
IsNotEmpty expression. |
java.lang.String |
getSpatialAggregateSQL(java.lang.String columnName,
int aggregation)
Returns the SQL fragment for the specfied Spatial aggregate expression.
|
java.lang.String |
getSpatialFilterExpression(java.lang.String columnName)
Returns the SQL fragment for the SQL WHERE-expression when parsing
org.hibernate.spatial.criterion.SpatialFilterExpression s
into prepared statements. |
java.lang.String |
getSpatialRelateSQL(java.lang.String columnName,
int spatialRelation)
Returns the SQL fragment for the SQL WHERE-clause when parsing
org.hibernatespatial.criterion.SpatialRelateExpression s
into prepared statements. |
boolean |
supports(SpatialFunction function)
Does this dialect supports the specified
SpatialFunction . |
boolean |
supportsFiltering()
Returns true if this
SpatialDialect supports a specific filtering function. |
augmentRecognizedTableTypes
supportsIfExistsAfterAlterTable
supportsNonQueryWithCTE, supportsPartitionBy
supportsIfExistsBeforeConstraintName
getDefaultMultiTableBulkIdStrategy, getDropSequenceString, supportsIfExistsBeforeTableName, supportsRowValueConstructorSyntaxInInList, supportsValuesList
bindLimitParametersInReverseOrder, buildSQLExceptionConversionDelegate, dropConstraints, getAddColumnString, getCallableStatementSupport, getCascadeConstraintsString, getCaseInsensitiveLike, getCreateSequenceString, getCreateSequenceString, getCurrentTimestampSelectString, getForUpdateNowaitString, getForUpdateNowaitString, getForUpdateString, getForUpdateString, getForUpdateString, getIdentityColumnSupport, getLimitHandler, getLimitString, getNativeIdentifierGeneratorStrategy, getNoColumnsInsertString, getQuerySequencesString, getReadLockString, getReadLockString, getResultSet, getResultSet, getResultSet, getSelectClauseNullString, getSelectSequenceNextValString, getSequenceNextValString, getSqlTypeDescriptorOverride, getViolatedConstraintNameExtracter, getWriteLockString, getWriteLockString, isCurrentTimestampSelectStringCallable, qualifyIndexName, registerResultSetOutParameter, requiresParensForTupleDistinctCounts, supportsCaseInsensitiveLike, supportsCommentOn, supportsCurrentTimestampSelection, supportsEmptyInList, supportsExpectedLobUsagePattern, supportsLimit, supportsLobValueChangePropogation, supportsNationalizedTypes, supportsOuterJoinForUpdate, supportsPooledSequences, supportsRowValueConstructorSyntax, supportsSequences, supportsUnboundedLobLocatorMaterialization, supportsUnionAll, toBooleanValueString, useInputStreamToInsertBlob
addSqlHintOrComment, appendLockHint, appendLockHint, applyLocksToSql, areStringComparisonsCaseInsensitive, bindLimitParametersFirst, buildIdentifierHelper, buildSQLExceptionConverter, canCreateCatalog, canCreateSchema, cast, cast, cast, closeQuote, convertToFirstRowValue, createCaseFragment, createOuterJoinFragment, defaultScrollMode, doesReadCommittedCauseWritersToBlockReaders, doesRepeatableReadCauseReadersToBlockWriters, escapeLiteral, forceLimitUsage, forceLobAsLastValue, forUpdateOfColumns, getAddColumnSuffixString, getAddForeignKeyConstraintString, getAddForeignKeyConstraintString, getAddPrimaryKeyConstraintString, getAddUniqueConstraintString, getAlterTableString, getAuxiliaryDatabaseObjectExporter, getCastTypeName, getColumnAliasExtractor, getColumnComment, getCreateCatalogCommand, getCreateMultisetTableString, getCreateSchemaCommand, getCreateSequenceStrings, getCreateSequenceStrings, getCreateTableString, getCrossJoinSeparator, getCurrentSchemaCommand, getCurrentTimestampSQLFunctionName, getDefaultBatchLoadSizingStrategy, getDefaultProperties, getDialect, getDialect, getDropCatalogCommand, getDropForeignKeyString, getDropSchemaCommand, getDropSequenceStrings, getDropTableString, getForeignKeyExporter, getForUpdateSkipLockedString, getForUpdateSkipLockedString, getForUpdateString, getForUpdateString, getFunctions, getHibernateTypeName, getHibernateTypeName, getIndexExporter, getInExpressionCountLimit, getKeywords, getLimitString, getLobMergeStrategy, getLockingStrategy, getLowercaseFunction, getMaxAliasLength, getNameQualifierSupport, getNativeIdentifierGeneratorClass, getNotExpression, getNullColumnString, getQueryHintString, getQueryHintString, getSchemaNameResolver, getSelectGUIDString, getSequenceExporter, getSequenceInformationExtractor, getTableComment, getTableExporter, getTableTypeString, getTypeName, getTypeName, getUniqueDelegate, getUniqueKeyExporter, hasAlterTable, hasSelfReferentialForeignKeyBug, inlineLiteral, isJdbcLogWarningsEnabledByDefault, isLegacyLimitHandlerBehaviorEnabled, isLockTimeoutParameterized, isTypeNameRegistered, openQuote, prependComment, quote, registerColumnType, registerColumnType, registerFunction, registerHibernateType, registerHibernateType, registerKeyword, registerResultSetOutParameter, remapSqlTypeDescriptor, renderOrderByElement, replaceResultVariableInOrderByClauseWithPosition, requiresCastingOfParametersInSelectClause, supportsBindAsCallableArgument, supportsCascadeDelete, supportsCircularCascadeDeleteConstraints, supportsColumnCheck, supportsExistsInSelect, supportsIfExistsAfterConstraintName, supportsIfExistsAfterTableName, supportsLimitOffset, supportsLockTimeouts, supportsNamedParameters, supportsNotNullUnique, supportsParametersInInsertSelect, supportsResultSetPositionQueryMethodsOnForwardOnlyCursor, supportsSkipLocked, supportsSubqueryOnMutatingTable, supportsSubselectAsInPredicateLHS, supportsTableCheck, supportsTupleCounts, supportsTupleDistinctCounts, supportsTuplesInSubqueries, supportsUnique, supportsUniqueConstraintInCreateAlterTable, supportsVariableLimit, toString, transformSelectString, useFollowOnLocking, useFollowOnLocking, useMaxForLimit
public void contributeTypes(TypeContributions typeContributions, ServiceRegistry serviceRegistry)
Dialect
contributeTypes
in class PostgreSQL82Dialect
typeContributions
- Callback to contribute the typesserviceRegistry
- The service registrypublic java.lang.String getSpatialRelateSQL(java.lang.String columnName, int spatialRelation)
org.hibernatespatial.criterion.SpatialRelateExpression
s
into prepared statements.
getSpatialRelateSQL
in interface SpatialDialect
columnName
- The name of the geometry-typed column to which the relation is
appliedspatialRelation
- The type of spatial relation (as defined in
SpatialRelation
).SpatialRelateExpression
public java.lang.String getSpatialFilterExpression(java.lang.String columnName)
org.hibernate.spatial.criterion.SpatialFilterExpression
s
into prepared statements.getSpatialFilterExpression
in interface SpatialDialect
columnName
- The name of the geometry-typed column to which the filter is
be appliedSpatialFilterExpression
public java.lang.String getSpatialAggregateSQL(java.lang.String columnName, int aggregation)
getSpatialAggregateSQL
in interface SpatialDialect
columnName
- The name of the Geometry propertyaggregation
- The type of SpatialAggregate
public java.lang.String getDWithinSQL(java.lang.String columnName)
DWithinExpression
.getDWithinSQL
in interface SpatialDialect
columnName
- The geometry column to test againstDWithinExpression
.public java.lang.String getHavingSridSQL(java.lang.String columnName)
HavingSridExpression
.getHavingSridSQL
in interface SpatialDialect
columnName
- The geometry column to test againstHavingSridExpression
.public java.lang.String getIsEmptySQL(java.lang.String columnName, boolean isEmpty)
IsEmptyExpression
or
IsNotEmpty
expression.getIsEmptySQL
in interface SpatialDialect
columnName
- The geometry columnisEmpty
- Whether the geometry is tested for empty or non-emptypublic boolean supportsFiltering()
SpatialDialect
supports a specific filtering function.
This is intended to signal DB-support for fast window queries, or MBR-overlap queries.
supportsFiltering
in interface SpatialDialect
public boolean supports(SpatialFunction function)
SpatialFunction
.supports
in interface SpatialDialect
function
- SpatialFunction
SpatialDialect
supports the spatial function specified by the function parameter.Copyright © 2001-2018 Red Hat, Inc. All Rights Reserved.