Class ApiExpressionUtils
- java.lang.Object
-
- org.apache.flink.table.expressions.ApiExpressionUtils
-
@Internal public final class ApiExpressionUtils extends Object
Utilities for API-specificExpressions.
-
-
Field Summary
Fields Modifier and Type Field Description static longMILLIS_PER_DAYstatic longMILLIS_PER_HOURstatic longMILLIS_PER_MINUTEstatic longMILLIS_PER_SECOND
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static org.apache.flink.table.expressions.ValueLiteralExpressionintervalOfMillis(long millis)static org.apache.flink.table.expressions.ValueLiteralExpressionintervalOfMonths(int months)static booleanisFunction(org.apache.flink.table.expressions.Expression expression, org.apache.flink.table.functions.BuiltInFunctionDefinition functionDefinition)Checks if the given expression is a given builtin function.static booleanisFunctionOfKind(org.apache.flink.table.expressions.Expression expression, org.apache.flink.table.functions.FunctionKind kind)Checks if the expression is a function call of given type.static LocalReferenceExpressionlocalRef(String name, org.apache.flink.table.types.DataType dataType)static LookupCallExpressionlookupCall(String name, org.apache.flink.table.expressions.Expression... args)static org.apache.flink.table.expressions.ExpressionobjectToExpression(Object expression)Converts a given object to an expression.static org.apache.flink.table.expressions.SqlCallExpressionsqlCall(String sqlExpression)static TableReferenceExpressiontableRef(String name, Table table)static TableReferenceExpressiontableRef(String name, QueryOperation queryOperation)static org.apache.flink.table.expressions.ExpressiontoMilliInterval(org.apache.flink.table.expressions.Expression e, long multiplier)static org.apache.flink.table.expressions.ExpressiontoMonthInterval(org.apache.flink.table.expressions.Expression e, int multiplier)static org.apache.flink.table.expressions.ExpressiontoRowInterval(org.apache.flink.table.expressions.Expression e)static org.apache.flink.table.expressions.TypeLiteralExpressiontypeLiteral(org.apache.flink.table.types.DataType dataType)static UnresolvedCallExpressionunresolvedCall(ContextResolvedFunction resolvedFunction, List<org.apache.flink.table.expressions.Expression> args)static UnresolvedCallExpressionunresolvedCall(ContextResolvedFunction resolvedFunction, org.apache.flink.table.expressions.Expression... args)static UnresolvedCallExpressionunresolvedCall(org.apache.flink.table.functions.FunctionDefinition functionDefinition, List<org.apache.flink.table.expressions.Expression> args)static UnresolvedCallExpressionunresolvedCall(org.apache.flink.table.functions.FunctionDefinition functionDefinition, org.apache.flink.table.expressions.Expression... args)static UnresolvedReferenceExpressionunresolvedRef(String name)static org.apache.flink.table.expressions.ExpressionunwrapFromApi(org.apache.flink.table.expressions.Expression expression)static org.apache.flink.table.expressions.ValueLiteralExpressionvalueLiteral(Object value)static org.apache.flink.table.expressions.ValueLiteralExpressionvalueLiteral(Object value, org.apache.flink.table.types.DataType dataType)
-
-
-
Field Detail
-
MILLIS_PER_SECOND
public static final long MILLIS_PER_SECOND
- See Also:
- Constant Field Values
-
MILLIS_PER_MINUTE
public static final long MILLIS_PER_MINUTE
- See Also:
- Constant Field Values
-
MILLIS_PER_HOUR
public static final long MILLIS_PER_HOUR
- See Also:
- Constant Field Values
-
MILLIS_PER_DAY
public static final long MILLIS_PER_DAY
- See Also:
- Constant Field Values
-
-
Method Detail
-
objectToExpression
public static org.apache.flink.table.expressions.Expression objectToExpression(Object expression)
Converts a given object to an expression.It converts:
nullto null literalRowto a call to a row constructor expressionMapto a call to a map constructor expressionListto a call to an array constructor expression- arrays to a call to an array constructor expression
- Scala's
Seqto an array constructor via reflection - Scala's
Mapto a map constructor via reflection - Scala's
BigDecimalto a DECIMAL literal - if none of the above applies, the function tries to convert the object to a value
literal with
valueLiteral(Object)
- Parameters:
expression- An object to convert to an expression
-
unwrapFromApi
public static org.apache.flink.table.expressions.Expression unwrapFromApi(org.apache.flink.table.expressions.Expression expression)
-
localRef
public static LocalReferenceExpression localRef(String name, org.apache.flink.table.types.DataType dataType)
-
valueLiteral
public static org.apache.flink.table.expressions.ValueLiteralExpression valueLiteral(Object value)
-
valueLiteral
public static org.apache.flink.table.expressions.ValueLiteralExpression valueLiteral(Object value, org.apache.flink.table.types.DataType dataType)
-
typeLiteral
public static org.apache.flink.table.expressions.TypeLiteralExpression typeLiteral(org.apache.flink.table.types.DataType dataType)
-
unresolvedRef
public static UnresolvedReferenceExpression unresolvedRef(String name)
-
unresolvedCall
public static UnresolvedCallExpression unresolvedCall(ContextResolvedFunction resolvedFunction, org.apache.flink.table.expressions.Expression... args)
-
unresolvedCall
public static UnresolvedCallExpression unresolvedCall(ContextResolvedFunction resolvedFunction, List<org.apache.flink.table.expressions.Expression> args)
-
unresolvedCall
public static UnresolvedCallExpression unresolvedCall(org.apache.flink.table.functions.FunctionDefinition functionDefinition, org.apache.flink.table.expressions.Expression... args)
-
unresolvedCall
public static UnresolvedCallExpression unresolvedCall(org.apache.flink.table.functions.FunctionDefinition functionDefinition, List<org.apache.flink.table.expressions.Expression> args)
-
tableRef
public static TableReferenceExpression tableRef(String name, Table table)
-
tableRef
public static TableReferenceExpression tableRef(String name, QueryOperation queryOperation)
-
lookupCall
public static LookupCallExpression lookupCall(String name, org.apache.flink.table.expressions.Expression... args)
-
sqlCall
public static org.apache.flink.table.expressions.SqlCallExpression sqlCall(String sqlExpression)
-
toMonthInterval
public static org.apache.flink.table.expressions.Expression toMonthInterval(org.apache.flink.table.expressions.Expression e, int multiplier)
-
intervalOfMillis
public static org.apache.flink.table.expressions.ValueLiteralExpression intervalOfMillis(long millis)
-
toMilliInterval
public static org.apache.flink.table.expressions.Expression toMilliInterval(org.apache.flink.table.expressions.Expression e, long multiplier)
-
intervalOfMonths
public static org.apache.flink.table.expressions.ValueLiteralExpression intervalOfMonths(int months)
-
toRowInterval
public static org.apache.flink.table.expressions.Expression toRowInterval(org.apache.flink.table.expressions.Expression e)
-
isFunctionOfKind
public static boolean isFunctionOfKind(org.apache.flink.table.expressions.Expression expression, org.apache.flink.table.functions.FunctionKind kind)Checks if the expression is a function call of given type.- Parameters:
expression- expression to checkkind- expected type of function- Returns:
- true if the expression is function call of given type, false otherwise
-
isFunction
public static boolean isFunction(org.apache.flink.table.expressions.Expression expression, org.apache.flink.table.functions.BuiltInFunctionDefinition functionDefinition)Checks if the given expression is a given builtin function.- Parameters:
expression- expression to checkfunctionDefinition- expected function definition- Returns:
- true if the given expression is a given function call
-
-