Class FederationExpressionParser

    • Constructor Detail

      • FederationExpressionParser

        public FederationExpressionParser()
    • Method Detail

      • mapFunctionToDataSourceSyntax

        public abstract String mapFunctionToDataSourceSyntax​(FunctionName functionName,
                                                             org.apache.arrow.vector.types.pojo.ArrowType type,
                                                             List<String> arguments)
        Each datasource has different syntax for various operations, quotes, etc. This is the only method a subclass to implement, and otherwise will just invoke parseComplexExpressions.
      • parseFunctionCallExpression

        public String parseFunctionCallExpression​(FunctionCallExpression functionCallExpression,
                                                  List<TypeAndValue> accumulator)
        This is a recursive function, as function calls can have arguments which, themselves, are function calls.
        Parameters:
        functionCallExpression -
        Returns:
      • parseVariableExpression

        public String parseVariableExpression​(VariableExpression variableExpression)
        Various connectors have different standards for wrapping column names in some specific quote character. This default implementation just returns the column name for connectors that don't have this specification.