Class QueryModelNormalizerOptimizer
- java.lang.Object
-
- org.eclipse.rdf4j.query.algebra.helpers.AbstractSimpleQueryModelVisitor<RuntimeException>
-
- org.eclipse.rdf4j.query.algebra.evaluation.optimizer.QueryModelNormalizerOptimizer
-
- All Implemented Interfaces:
QueryOptimizer
,QueryModelVisitor<RuntimeException>
public class QueryModelNormalizerOptimizer extends AbstractSimpleQueryModelVisitor<RuntimeException> implements QueryOptimizer
A query optimizer that (partially) normalizes query models to a canonical form. Note: this implementation does not yet cover all query node types.- Author:
- Arjohn Kampman
-
-
Constructor Summary
Constructors Constructor Description QueryModelNormalizerOptimizer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
meet(And and)
void
meet(Difference difference)
void
meet(Filter node)
void
meet(Intersection intersection)
void
meet(Join join)
void
meet(LeftJoin leftJoin)
void
meet(Or or)
void
meet(Union union)
protected void
meetUnaryTupleOperator(UnaryTupleOperator node)
Method called by all meet methods with aUnaryTupleOperator
node as argument.void
optimize(TupleExpr tupleExpr, Dataset dataset, BindingSet bindings)
-
Methods inherited from class org.eclipse.rdf4j.query.algebra.helpers.AbstractSimpleQueryModelVisitor
meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meet, meetBinaryTupleOperator, meetBinaryValueOperator, meetCompareSubQueryValueOperator, meetNAryValueOperator, meetOther, meetSubQueryValueOperator, meetUnaryValueOperator, meetUnsupported, meetUpdateExpr
-
-
-
-
Method Detail
-
optimize
public void optimize(TupleExpr tupleExpr, Dataset dataset, BindingSet bindings)
- Specified by:
optimize
in interfaceQueryOptimizer
-
meet
public void meet(Join join)
- Specified by:
meet
in interfaceQueryModelVisitor<RuntimeException>
- Overrides:
meet
in classAbstractSimpleQueryModelVisitor<RuntimeException>
-
meet
public void meet(LeftJoin leftJoin)
- Specified by:
meet
in interfaceQueryModelVisitor<RuntimeException>
- Overrides:
meet
in classAbstractSimpleQueryModelVisitor<RuntimeException>
-
meet
public void meet(Union union)
- Specified by:
meet
in interfaceQueryModelVisitor<RuntimeException>
- Overrides:
meet
in classAbstractSimpleQueryModelVisitor<RuntimeException>
-
meet
public void meet(Difference difference)
- Specified by:
meet
in interfaceQueryModelVisitor<RuntimeException>
- Overrides:
meet
in classAbstractSimpleQueryModelVisitor<RuntimeException>
-
meet
public void meet(Intersection intersection)
- Specified by:
meet
in interfaceQueryModelVisitor<RuntimeException>
- Overrides:
meet
in classAbstractSimpleQueryModelVisitor<RuntimeException>
-
meetUnaryTupleOperator
protected void meetUnaryTupleOperator(UnaryTupleOperator node)
Description copied from class:AbstractSimpleQueryModelVisitor
Method called by all meet methods with aUnaryTupleOperator
node as argument.- Overrides:
meetUnaryTupleOperator
in classAbstractSimpleQueryModelVisitor<RuntimeException>
- Parameters:
node
- The node that is being visited.
-
meet
public void meet(Filter node)
- Specified by:
meet
in interfaceQueryModelVisitor<RuntimeException>
- Overrides:
meet
in classAbstractSimpleQueryModelVisitor<RuntimeException>
-
meet
public void meet(Or or)
- Specified by:
meet
in interfaceQueryModelVisitor<RuntimeException>
- Overrides:
meet
in classAbstractSimpleQueryModelVisitor<RuntimeException>
-
meet
public void meet(And and)
- Specified by:
meet
in interfaceQueryModelVisitor<RuntimeException>
- Overrides:
meet
in classAbstractSimpleQueryModelVisitor<RuntimeException>
-
-