|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.metamatrix.query.processor.relational.RelationalNode
com.metamatrix.query.processor.relational.SelectNode
com.metamatrix.query.processor.relational.DependentSelectNode
public class DependentSelectNode
This node represents a Select node for the case where the criteria is or is composed of one or more SubqueryContainer criteria objects (for subqueries in the criteria). In that case, all the corresponding "child" or "sub" ProcessorPlans (one for each SubqueryContainer criteria) must be processed before the entire criteria can be evaluated.
Field Summary |
---|
Constructor Summary | |
---|---|
DependentSelectNode(int nodeID)
Constructor for DependentSelectNode. |
Method Summary | |
---|---|
java.lang.Object |
clone()
Returns a deep clone |
void |
close()
Closes the subquery processor (which removes the temporary tuple sources of the subquery results) |
java.util.List |
getChildPlans()
Find all ProcessorPlans used by this node. |
java.util.Map |
getDescriptionProperties()
Get a description as a set of properties of primitive types such as String, Integer, etc. |
void |
open()
Calls super.open(), then initializes subquery processor |
protected void |
prepareToProcessTuple(java.util.Map elementMap,
java.util.List currentTuple)
This subclass will execute any subqueries which the criteria is dependent on; if any subqueries are correlated, this class will use the current tuple to execute correlated subqueries |
void |
reset()
|
void |
setCorrelatedReferences(java.util.List correlatedReferences)
Set List of References needing to be updated with each outer tuple |
void |
setPlansAndCriteriaMapping(java.util.List subqueryProcessorPlans,
java.util.List subqueryContainerCriteria)
Set the two Lists that map subquery ProcessorPlans to SubqueryContainer criteria which hold the Commands represented by the ProcessorPlans. |
Methods inherited from class com.metamatrix.query.processor.relational.SelectNode |
---|
copy, getCriteria, getNodeString, nextBatchDirect, setCriteria |
Methods inherited from class com.metamatrix.query.processor.relational.RelationalNode |
---|
addBatchRow, addChild, copy, createLookupMap, getBatchSize, getBufferManager, getChildDescriptionProperties, getChildren, getClassName, getConnectionID, getContext, getDataManager, getElements, getEstimateNodeCardinality, getID, getNodeStatistics, getParent, initialize, isBatchFull, isClosed, nextBatch, nodeToString, projectTuple, pullBatch, setElements, setEstimateDepAccessCardinality, setEstimateDepJoinCost, setEstimateJoinCost, setEstimateNodeCardinality, setEstimateNodeSetSize, setID, setParent, terminateBatches, toString |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public DependentSelectNode(int nodeID)
nodeID
- Method Detail |
---|
public void setPlansAndCriteriaMapping(java.util.List subqueryProcessorPlans, java.util.List subqueryContainerCriteria)
subqueryProcessorPlans
- List of ProcessorPlanssubqueryContainerCriteria
- List of SubqueryContainer criteriapublic void setCorrelatedReferences(java.util.List correlatedReferences)
correlatedReferences
- Listpublic void reset()
reset
in class SelectNode
public void open() throws MetaMatrixComponentException, MetaMatrixProcessingException
open
in class SelectNode
MetaMatrixComponentException
MetaMatrixProcessingException
public void close() throws MetaMatrixComponentException
close
in class RelationalNode
MetaMatrixComponentException
RelationalNode.close()
protected void prepareToProcessTuple(java.util.Map elementMap, java.util.List currentTuple) throws BlockedException, MetaMatrixComponentException, MetaMatrixProcessingException
prepareToProcessTuple
in class SelectNode
elementMap
- Map of ElementSymbol elements to Integer indices into
the currentTuple parametercurrentTuple
- the current tuple about to be processed by
this node
MetaMatrixProcessingException
- for exception due to user input
BlockedException
MetaMatrixComponentException
SelectNode.prepareToProcessTuple(java.util.Map, java.util.List)
public java.lang.Object clone()
clone
in class SelectNode
Object.clone()
public java.util.Map getDescriptionProperties()
Describable
getDescriptionProperties
in interface Describable
getDescriptionProperties
in class SelectNode
public java.util.List getChildPlans()
RelationalNode
getChildPlans
in class RelationalNode
com.metamatrix.query.processor.relational.RelationalNode#getSubPlans()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |