net.sf.saffron.rel.jdbc
Class AddFilterToQueryRule
java.lang.Object
|
+--net.sf.saffron.opt.VolcanoRule
|
+--net.sf.saffron.rel.jdbc.AddFilterToQueryRule
- class AddFilterToQueryRule
- extends VolcanoRule
AddFilterToQueryRule
grafts a FilterRel
onto a JdbcQuery
.
This rule only works if the query's select clause is "*". If you
start with a FilterRel
on a ProjectRel
on
a JavaTableAccessRel
, this will not be the
case. You can fix it by pushing the filter through the project. (todo:
Implement a rule to do this.)
- Since:
- Nov 26, 2003
- Version:
- $Id: $
- Author:
- jhyde
AddFilterToQueryRule
AddFilterToQueryRule()
onMatch
public void onMatch(VolcanoRuleCall call)
- Description copied from class:
VolcanoRule
- This method is called every time the rule matches. At the time that
this method is called,
call.rels
holds
the set of relational expressions which match the operands to the
rule; call.rels[0]
is the root expression.
Typically a rule would check that the nodes are valid matches, creates
a new expression, then calls back VolcanoRuleCall.transformTo(net.sf.saffron.rel.SaffronRel)
to register the expression.
- Specified by:
onMatch
in class VolcanoRule