public class FilterOptimizer extends AbstractQueryModelVisitor<OptimizationException> implements FedXOptimizer
Modifier and Type | Class and Description |
---|---|
protected static class |
FilterOptimizer.FilterExprInsertVisitor |
protected static class |
FilterOptimizer.VarFinder |
Constructor and Description |
---|
FilterOptimizer() |
Modifier and Type | Method and Description |
---|---|
protected void |
getConjunctiveExpressions(ValueExpr expr,
List<ValueExpr> conjExpr)
add the conjunctive expressions to specified list, has recursive step.
|
protected boolean |
isCompatibleExpr(ValueExpr e)
returns true if this filter can be used for optimization.
|
void |
meet(Filter filter) |
void |
meet(Service node) |
void |
optimize(TupleExpr tupleExpr)
Optimize the provided tuple expression
|
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, meet, meet, meet, meet, meet, meetBinaryTupleOperator, meetBinaryValueOperator, meetCompareSubQueryValueOperator, meetNAryValueOperator, meetNode, meetOther, meetSubQueryValueOperator, meetUnaryTupleOperator, meetUnaryValueOperator, meetUpdateExpr
public void optimize(TupleExpr tupleExpr)
FedXOptimizer
optimize
in interface FedXOptimizer
public void meet(Filter filter)
meet
in interface QueryModelVisitor<OptimizationException>
meet
in class AbstractQueryModelVisitor<OptimizationException>
public void meet(Service node) throws OptimizationException
meet
in interface QueryModelVisitor<OptimizationException>
meet
in class AbstractQueryModelVisitor<OptimizationException>
OptimizationException
protected void getConjunctiveExpressions(ValueExpr expr, List<ValueExpr> conjExpr)
expr
- the expr, in the best case in CNFconjExpr
- the list to which expressions will be addedprotected boolean isCompatibleExpr(ValueExpr e)
e
- Copyright © 2015-2020 Eclipse Foundation. All Rights Reserved.