Package org.hibernate.boot.model
Interface FunctionContributor
- All Known Implementing Classes:
AbstractHANADialect
,AbstractTransactSQLDialect
,AzureSQLServerDialect
,CockroachDB202SpatialDialect
,CockroachDialect
,DB2400Dialect
,DB2400V7R3Dialect
,DB2Dialect
,DB2iDialect
,DB2SpatialDialect
,DB2zDialect
,DerbyDialect
,Dialect
,DialectDelegateWrapper
,FunctionContributorImpl
,GenericDialect
,H2Dialect
,HANACloudColumnStoreDialect
,HANAColumnStoreDialect
,HANADialect
,HANARowStoreDialect
,HANASpatialDialect
,HSQLDialect
,MariaDB106Dialect
,MariaDBDialect
,MySQL56InnoDBSpatialDialect
,MySQL56SpatialDialect
,MySQL5InnoDBSpatialDialect
,MySQL5SpatialDialect
,MySQL8Dialect
,MySQLDialect
,MySQLSpatialDialect
,OracleDialect
,OracleSpatial10gDialect
,OracleSpatialSDO10gDialect
,PostgisPG10Dialect
,PostgisPG93Dialect
,PostgisPG94Dialect
,PostgisPG95Dialect
,PostgresPlusDialect
,PostgreSQLDialect
,SpannerDialect
,SpatialFunctionContributor
,SQLServer2012Dialect
,SqlServer2012SpatialDialect
,SQLServer2016Dialect
,SQLServerDialect
,SybaseASEDialect
,SybaseDialect
,TiDBDialect
On object that contributes custom HQL functions, eventually to a
SqmFunctionRegistry
, via an
instance of FunctionContributions
.
-
The most common way to integrate a
FunctionContributor
is by making it discoverable via the JavaServiceLoader
facility. -
Alternatively, a
FunctionContributor
may be programmatically supplied toConfiguration.registerFunctionContributor(FunctionContributor)
or evenMetadataBuilder.applyFunctions(FunctionContributor)
.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoid
contributeFunctions
(FunctionContributions functionContributions) Contribute functionsdefault int
ordinal()
Determines order in which the contributions will be applied (lowest ordinal first).
-
Method Details
-
contributeFunctions
Contribute functions- Parameters:
functionContributions
- The target for the contributions
-
ordinal
default int ordinal()Determines order in which the contributions will be applied (lowest ordinal first).The range 0-500 is reserved for Hibernate, range 500-1000 for libraries and 1000-Integer.MAX_VALUE for user-defined FunctionContributors.
Contributions from higher precedence contributors (higher numbers) effectively override contributions from lower precedence. E.g. if a contributor with precedence 1000 contributes a function named
"max"
, that will override Hibernate's standard function of that name.- Returns:
- the ordinal for this FunctionContributor
-