Class AbstractJsonExtractFunction
java.lang.Object
org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor
org.hibernate.query.sqm.function.AbstractSqmSelfRenderingFunctionDescriptor
org.hibernate.query.sqm.function.NamedSqmFunctionDescriptor
org.hibernate.dialect.function.StandardSQLFunction
com.axelor.db.hibernate.dialect.function.AbstractJsonExtractFunction
- All Implemented Interfaces:
FunctionRenderer
,FunctionRenderingSupport
,SqmFunctionDescriptor
- Direct Known Subclasses:
MySQLJsonExtractFunction
,OracleJsonExtractFunction
,PostgreSQLJsonExtractFunction
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
AbstractJsonExtractFunction
(String name, BasicTypeReference<?> type, String cast) protected
AbstractJsonExtractFunction
(String name, BasicTypeReference<?> type, String cast, String transformFunction, Collector<CharSequence, ?, String> collectPath) -
Method Summary
Modifier and TypeMethodDescriptionvoid
render
(SqlAppender sqlAppender, List<? extends SqlAstNode> sqlAstArguments, ReturnableType<?> returnType, SqlAstTranslator<?> translator) void
renderPath
(SqlAppender sqlAppender, List<? extends SqlAstNode> pathArgs, ReturnableType<?> returnType, SqlAstTranslator<?> translator) Renders the JSON path part.Methods inherited from class org.hibernate.dialect.function.StandardSQLFunction
getType
Methods inherited from class org.hibernate.query.sqm.function.NamedSqmFunctionDescriptor
alwaysIncludesParentheses, getArgumentListSignature, getName, render, render, render, toString
Methods inherited from class org.hibernate.query.sqm.function.AbstractSqmSelfRenderingFunctionDescriptor
generateSqmAggregateFunctionExpression, generateSqmFunctionExpression, generateSqmOrderedSetAggregateFunctionExpression, generateSqmWindowFunctionExpression, getFunctionKind
Methods inherited from class org.hibernate.query.sqm.function.AbstractSqmFunctionDescriptor
generateAggregateSqmExpression, generateOrderedSetAggregateSqmExpression, generateSqmExpression, generateWindowSqmExpression, getArgumentsValidator, getArgumentTypeResolver, getReturnSignature, getReturnTypeResolver, getSignature
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.hibernate.query.sqm.function.FunctionRenderer
render
Methods inherited from interface org.hibernate.query.sqm.function.FunctionRenderingSupport
render, render, render
Methods inherited from interface org.hibernate.query.sqm.function.SqmFunctionDescriptor
generateSqmExpression, generateSqmExpression
-
Constructor Details
-
AbstractJsonExtractFunction
-
AbstractJsonExtractFunction
protected AbstractJsonExtractFunction(String name, BasicTypeReference<?> type, String cast, String transformFunction, Collector<CharSequence, ?, String> collectPath)
-
-
Method Details
-
render
public void render(SqlAppender sqlAppender, List<? extends SqlAstNode> sqlAstArguments, ReturnableType<?> returnType, SqlAstTranslator<?> translator) - Specified by:
render
in interfaceFunctionRenderer
- Specified by:
render
in interfaceFunctionRenderingSupport
- Overrides:
render
in classNamedSqmFunctionDescriptor
-
renderPath
public void renderPath(SqlAppender sqlAppender, List<? extends SqlAstNode> pathArgs, ReturnableType<?> returnType, SqlAstTranslator<?> translator) Renders the JSON path part.Default implementation uses
collectPath
.- Parameters:
sqlAppender
- The SQL appender to which the rendered SQL will be added.pathArgs
- A list of SQL AST nodes representing the JSON path components.returnType
- The return type of the rendered function.translator
- The SQL AST translator.- Throws:
NullPointerException
- ifcollectPath
isnull
.
-