Class InfoSchemaFilterBuilder
java.lang.Object
org.apache.drill.common.expression.visitors.AbstractExprVisitor<InfoSchemaFilter.ExprNode,Void,RuntimeException>
org.apache.drill.exec.store.ischema.InfoSchemaFilterBuilder
- All Implemented Interfaces:
ExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException>
public class InfoSchemaFilterBuilder
extends AbstractExprVisitor<InfoSchemaFilter.ExprNode,Void,RuntimeException>
Builds a InfoSchemaFilter out of the Filter condition. Currently we look only for certain conditions. Mainly
conditions involving columns "CATALOG_NAME, "TABLE_NAME", "SCHEMA_NAME", "TABLE_SCHEMA" and "COLUMN_NAME", and
functions EQUAL, NOT EQUAL, LIKE, OR and AND.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()booleanvisitBooleanOperator(BooleanOperator op, Void value) visitCastExpression(CastExpression e, Void value) visitFunctionCall(FunctionCall call, Void value) visitSchemaPath(SchemaPath path, Void value) visitUnknown(LogicalExpression e, Void value) Handles implementation-specific expressions not known to the visitor structure.Methods inherited from class org.apache.drill.common.expression.visitors.AbstractExprVisitor
visitAnyValueExpression, visitBooleanConstant, visitConvertExpression, visitDateConstant, visitDecimal18Constant, visitDecimal28Constant, visitDecimal38Constant, visitDecimal9Constant, visitDoubleConstant, visitFloatConstant, visitFunctionHolderExpression, visitIfExpression, visitIntConstant, visitIntervalDayConstant, visitIntervalYearConstant, visitLongConstant, visitNullConstant, visitNullExpression, visitParameter, visitTimeConstant, visitTimeStampConstant, visitTypedFieldExpr, visitVarDecimalConstant
-
Constructor Details
-
InfoSchemaFilterBuilder
-
-
Method Details
-
build
-
isAllExpressionsConverted
public boolean isAllExpressionsConverted() -
visitFunctionCall
public InfoSchemaFilter.ExprNode visitFunctionCall(FunctionCall call, Void value) throws RuntimeException - Specified by:
visitFunctionCallin interfaceExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Overrides:
visitFunctionCallin classAbstractExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Throws:
RuntimeException
-
visitBooleanOperator
public InfoSchemaFilter.ExprNode visitBooleanOperator(BooleanOperator op, Void value) throws RuntimeException - Specified by:
visitBooleanOperatorin interfaceExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Overrides:
visitBooleanOperatorin classAbstractExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Throws:
RuntimeException
-
visitCastExpression
public InfoSchemaFilter.ExprNode visitCastExpression(CastExpression e, Void value) throws RuntimeException - Specified by:
visitCastExpressionin interfaceExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Overrides:
visitCastExpressionin classAbstractExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Throws:
RuntimeException
-
visitQuotedStringConstant
public InfoSchemaFilter.ExprNode visitQuotedStringConstant(ValueExpressions.QuotedString e, Void value) throws RuntimeException - Specified by:
visitQuotedStringConstantin interfaceExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Overrides:
visitQuotedStringConstantin classAbstractExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Throws:
RuntimeException
-
visitSchemaPath
public InfoSchemaFilter.ExprNode visitSchemaPath(SchemaPath path, Void value) throws RuntimeException - Specified by:
visitSchemaPathin interfaceExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Overrides:
visitSchemaPathin classAbstractExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Throws:
RuntimeException
-
visitUnknown
public InfoSchemaFilter.ExprNode visitUnknown(LogicalExpression e, Void value) throws RuntimeException Description copied from class:AbstractExprVisitorHandles implementation-specific expressions not known to the visitor structure. Since there are no "visitFoo" methods for these "unknown" expressions, subclassses should use the functionally-equivalentinstanceofapproach to parse out these "unknown" expressions.- Specified by:
visitUnknownin interfaceExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Overrides:
visitUnknownin classAbstractExprVisitor<InfoSchemaFilter.ExprNode,Void, RuntimeException> - Throws:
RuntimeException
-