Interface FunctionContributor

All Known Implementing Classes:
AbstractHANADialect, AbstractTransactSQLDialect, AzureSQLServerDialect, CockroachDialect, DB2400Dialect, DB2400V7R3Dialect, DB2Dialect, DB2iDialect, DB2zDialect, DerbyDialect, Dialect, DialectDelegateWrapper, FunctionContributorImpl, GenericDialect, H2Dialect, HANACloudColumnStoreDialect, HANAColumnStoreDialect, HANADialect, HANARowStoreDialect, HSQLDialect, MariaDB106Dialect, MariaDBDialect, MySQL8Dialect, MySQLDialect, OracleDialect, PostgresPlusDialect, PostgreSQLDialect, SpannerDialect, SQLServer2012Dialect, SQLServer2016Dialect, SQLServerDialect, SybaseASEDialect, SybaseDialect, TiDBDialect

@JavaServiceLoadable public interface FunctionContributor
On object that contributes custom HQL functions, eventually to a SqmFunctionRegistry, via an instance of FunctionContributions.
Author:
Karel Maesen
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Contribute functions
    default int
    Determines order in which the contributions will be applied (lowest ordinal first).
  • Method Details

    • contributeFunctions

      void contributeFunctions(FunctionContributions functionContributions)
      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