Class DSpacePostgreSQL82Dialect

  • All Implemented Interfaces:
    org.hibernate.exception.spi.ConversionContext

    public class DSpacePostgreSQL82Dialect
    extends org.hibernate.dialect.PostgreSQL82Dialect
    UUID's are not supported by default in hibernate due to differences in the database in order to fix this a custom sql dialect is needed. Source: https://forum.hibernate.org/viewtopic.php?f=1&t=1014157
    Author:
    kevinvandevelde at atmire.com
    • Field Summary

      • Fields inherited from class org.hibernate.dialect.Dialect

        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, TWO_SINGLE_QUOTES_REPLACEMENT
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void contributeTypes​(org.hibernate.boot.model.TypeContributions typeContributions, org.hibernate.service.ServiceRegistry serviceRegistry)  
      org.hibernate.type.descriptor.sql.SqlTypeDescriptor getSqlTypeDescriptorOverride​(int sqlCode)
      Override is needed to properly support the CLOB on metadatavalue in Postgres and Oracle.
      protected void registerHibernateType​(int code, String name)  
      • Methods inherited from class org.hibernate.dialect.PostgreSQL82Dialect

        getDefaultMultiTableBulkIdStrategy, getDropSequenceString, supportsIfExistsBeforeTableName, supportsRowValueConstructorSyntaxInInList, supportsValuesList
      • Methods inherited from class org.hibernate.dialect.PostgreSQL81Dialect

        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, getViolatedConstraintNameExtracter, getWriteLockString, getWriteLockString, isCurrentTimestampSelectStringCallable, qualifyIndexName, registerResultSetOutParameter, requiresParensForTupleDistinctCounts, supportsCaseInsensitiveLike, supportsCommentOn, supportsCurrentTimestampSelection, supportsEmptyInList, supportsExpectedLobUsagePattern, supportsJdbcConnectionLobCreation, supportsLimit, supportsLobValueChangePropogation, supportsNationalizedTypes, supportsNoWait, supportsOuterJoinForUpdate, supportsPooledSequences, supportsRowValueConstructorSyntax, supportsSelectAliasInGroupByClause, supportsSequences, supportsUnboundedLobLocatorMaterialization, supportsUnionAll, toBooleanValueString, useInputStreamToInsertBlob
      • Methods inherited from class org.hibernate.dialect.Dialect

        addSqlHintOrComment, appendLockHint, appendLockHint, applyLocksToSql, areStringComparisonsCaseInsensitive, augmentRecognizedTableTypes, 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, registerKeyword, registerResultSetOutParameter, remapSqlTypeDescriptor, renderOrderByElement, replaceResultVariableInOrderByClauseWithPosition, requiresCastingOfParametersInSelectClause, supportsBindAsCallableArgument, supportsCascadeDelete, supportsCircularCascadeDeleteConstraints, supportsColumnCheck, supportsExistsInSelect, supportsIfExistsAfterAlterTable, supportsIfExistsAfterConstraintName, supportsIfExistsAfterTableName, supportsIfExistsBeforeConstraintName, supportsLimitOffset, supportsLockTimeouts, supportsNamedParameters, supportsNoColumnsInsert, supportsNonQueryWithCTE, supportsNotNullUnique, supportsParametersInInsertSelect, supportsPartitionBy, supportsResultSetPositionQueryMethodsOnForwardOnlyCursor, supportsSkipLocked, supportsSubqueryOnMutatingTable, supportsSubselectAsInPredicateLHS, supportsTableCheck, supportsTupleCounts, supportsTupleDistinctCounts, supportsTuplesInSubqueries, supportsUnique, supportsUniqueConstraintInCreateAlterTable, supportsVariableLimit, toString, transformSelectString, useFollowOnLocking, useFollowOnLocking, useMaxForLimit
    • Constructor Detail

      • DSpacePostgreSQL82Dialect

        public DSpacePostgreSQL82Dialect()
    • Method Detail

      • contributeTypes

        public void contributeTypes​(org.hibernate.boot.model.TypeContributions typeContributions,
                                    org.hibernate.service.ServiceRegistry serviceRegistry)
        Overrides:
        contributeTypes in class org.hibernate.dialect.PostgreSQL82Dialect
      • registerHibernateType

        protected void registerHibernateType​(int code,
                                             String name)
        Overrides:
        registerHibernateType in class org.hibernate.dialect.Dialect
      • getSqlTypeDescriptorOverride

        public org.hibernate.type.descriptor.sql.SqlTypeDescriptor getSqlTypeDescriptorOverride​(int sqlCode)
        Override is needed to properly support the CLOB on metadatavalue in Postgres and Oracle.
        Overrides:
        getSqlTypeDescriptorOverride in class org.hibernate.dialect.PostgreSQL81Dialect
        Parameters:
        sqlCode - JDBC type-code for the column mapped by this type.
        Returns:
        Descriptor for the SQL/JDBC side of a value mapping.