com.metamatrix.query.processor.relational
Class JoinStrategy

java.lang.Object
  extended by com.metamatrix.query.processor.relational.JoinStrategy
Direct Known Subclasses:
MergeJoinStrategy

public abstract class JoinStrategy
extends java.lang.Object


Field Summary
protected  JoinNode joinNode
           
protected  com.metamatrix.query.processor.relational.SourceState leftSource
           
protected  com.metamatrix.query.processor.relational.SourceState rightSource
           
 
Constructor Summary
JoinStrategy()
           
 
Method Summary
abstract  java.lang.Object clone()
           
 void close()
           
 void initialize(JoinNode joinNode)
           
protected  void loadLeft()
           
protected  void loadRight()
           
protected abstract  java.util.List nextTuple()
           
protected  java.util.List outputTuple(java.util.List leftTuple, java.util.List rightTuple)
          Output a combined, projected tuple based on tuple parts from the left and right.
protected  void postLoadLeft()
           
protected  void postLoadRight()
           
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

joinNode

protected JoinNode joinNode

leftSource

protected com.metamatrix.query.processor.relational.SourceState leftSource

rightSource

protected com.metamatrix.query.processor.relational.SourceState rightSource
Constructor Detail

JoinStrategy

public JoinStrategy()
Method Detail

close

public void close()
           throws TupleSourceNotFoundException,
                  MetaMatrixComponentException
Throws:
TupleSourceNotFoundException
MetaMatrixComponentException

initialize

public void initialize(JoinNode joinNode)
                throws MetaMatrixComponentException
Throws:
MetaMatrixComponentException

loadLeft

protected void loadLeft()
                 throws MetaMatrixComponentException,
                        MetaMatrixProcessingException
Throws:
MetaMatrixComponentException
MetaMatrixProcessingException

postLoadLeft

protected void postLoadLeft()
                     throws MetaMatrixComponentException,
                            MetaMatrixProcessingException
Throws:
MetaMatrixComponentException
MetaMatrixProcessingException

loadRight

protected void loadRight()
                  throws MetaMatrixComponentException,
                         MetaMatrixProcessingException
Throws:
MetaMatrixComponentException
MetaMatrixProcessingException

postLoadRight

protected void postLoadRight()
                      throws MetaMatrixComponentException,
                             MetaMatrixProcessingException
Throws:
MetaMatrixComponentException
MetaMatrixProcessingException

outputTuple

protected java.util.List outputTuple(java.util.List leftTuple,
                                     java.util.List rightTuple)
Output a combined, projected tuple based on tuple parts from the left and right.

Parameters:
leftTuple - Left tuple part
rightTuple - Right tuple part
Throws:
MetaMatrixComponentException

nextTuple

protected abstract java.util.List nextTuple()
                                     throws MetaMatrixComponentException,
                                            CriteriaEvaluationException,
                                            MetaMatrixProcessingException
Throws:
MetaMatrixComponentException
CriteriaEvaluationException
MetaMatrixProcessingException

clone

public abstract java.lang.Object clone()
Overrides:
clone in class java.lang.Object


Copyright © 2009. All Rights Reserved.