org.eigenbase.relopt.volcano
Class ChainedPhaseRuleMappingInitializer
java.lang.Object
org.eigenbase.relopt.volcano.ChainedPhaseRuleMappingInitializer
- All Implemented Interfaces:
- VolcanoPlannerPhaseRuleMappingInitializer
public abstract class ChainedPhaseRuleMappingInitializer
- extends Object
- implements VolcanoPlannerPhaseRuleMappingInitializer
ChainedPhaseRuleMappingInitializer is an abstract implementation of VolcanoPlannerPhaseRuleMappingInitializer
that allows additional rules to be
layered ontop of those configured by a subordinate
VolcanoPlannerPhaseRuleMappingInitializer.
- Author:
- Stephan Zuercher
- See Also:
VolcanoPlannerPhaseRuleMappingInitializer
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
subordinate
private final VolcanoPlannerPhaseRuleMappingInitializer subordinate
ChainedPhaseRuleMappingInitializer
public ChainedPhaseRuleMappingInitializer(VolcanoPlannerPhaseRuleMappingInitializer subordinate)
initialize
public final void initialize(Map<VolcanoPlannerPhase,Set<String>> phaseRuleMap)
- Description copied from interface:
VolcanoPlannerPhaseRuleMappingInitializer
- Initializes a
VolcanoPlannerPhase
-to-rule map. Rules are
specified by description (see above). When this method is called, the map
will already be pre-initialized with empty sets for each
VolcanoPlannerPhase. Implementations must not return having added or
removed keys from the map, although it is safe to temporarily add or
remove keys.
- Specified by:
initialize
in interface VolcanoPlannerPhaseRuleMappingInitializer
- Parameters:
phaseRuleMap
- a VolcanoPlannerPhase
-to-rule map
chainedInitialize
public abstract void chainedInitialize(Map<VolcanoPlannerPhase,Set<String>> phaseRuleMap)
- Extend this method to provide phase-to-rule mappings beyond what is
provided by this initializer's subordinate.
When this method is called, the map will already be pre-initialized
with empty sets for each VolcanoPlannerPhase. Implementations must not
return having added or removed keys from the map, although it is safe to
temporarily add or remove keys.
- Parameters:
phaseRuleMap
- the VolcanoPlannerPhase
-rule description map- See Also:
VolcanoPlannerPhaseRuleMappingInitializer