Class SelectNode
- java.lang.Object
-
- org.teiid.query.processor.relational.RelationalNode
-
- org.teiid.query.processor.relational.SubqueryAwareRelationalNode
-
- org.teiid.query.processor.relational.SelectNode
-
- All Implemented Interfaces:
Cloneable,BatchCollector.BatchProducer
public class SelectNode extends SubqueryAwareRelationalNode
-
-
Field Summary
-
Fields inherited from class org.teiid.query.processor.relational.RelationalNode
childCount
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedSelectNode()SelectNode(int nodeID)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Objectclone()All the implementation of Cloneable interface need to implement clone() method.protected voidcopyTo(SelectNode target)CriteriagetCriteria()PlanNodegetDescriptionProperties()protected voidgetNodeString(StringBuffer str)Collection<? extends LanguageObject>getObjects()voidinitialize(CommandContext context, BufferManager bufferManager, ProcessorDataManager dataMgr)TupleBatchnextBatchDirect()Template method for subclasses to implement.voidopen()voidreset()voidsetCriteria(Criteria criteria)voidsetProjectedExpressions(List<Expression> projectedExpressions)voidsetShouldEvaluateExpressions(boolean shouldEvaluate)-
Methods inherited from class org.teiid.query.processor.relational.SubqueryAwareRelationalNode
closeDirect, getEvaluator, requiresTransaction, requiresTransaction, setReferenceValues
-
Methods inherited from class org.teiid.query.processor.relational.RelationalNode
addBatchRow, addChild, close, copyTo, createLookupMap, getBatchSize, getBuffer, getBufferDirect, getBufferManager, getChildCount, getChildren, getClassName, getConnectionID, getContext, getDataManager, getElements, getEstimateNodeCardinality, getID, getNodeStatistics, getOutputElements, getParent, getProjectionIndexes, hasBuffer, hasPendingRows, isBatchFull, isClosed, isLastBatch, nextBatch, nodeToString, projectTuple, projectTuple, pullBatch, setContext, setElements, setEstimateDepAccessCardinality, setEstimateDepJoinCost, setEstimateJoinCost, setEstimateNodeCardinality, setEstimateNodeSetSize, setID, setParent, terminateBatches, toString, unwrapException
-
-
-
-
Method Detail
-
reset
public void reset()
- Overrides:
resetin classSubqueryAwareRelationalNode
-
setCriteria
public void setCriteria(Criteria criteria)
-
getCriteria
public Criteria getCriteria()
-
setProjectedExpressions
public void setProjectedExpressions(List<Expression> projectedExpressions)
-
initialize
public void initialize(CommandContext context, BufferManager bufferManager, ProcessorDataManager dataMgr)
- Overrides:
initializein classRelationalNode
-
nextBatchDirect
public TupleBatch nextBatchDirect() throws BlockedException, TeiidComponentException, TeiidProcessingException
Description copied from class:RelationalNodeTemplate method for subclasses to implement.- Specified by:
nextBatchDirectin classRelationalNode- Returns:
- Throws:
BlockedExceptionTeiidComponentExceptionTeiidProcessingException- if exception related to user input occured- See Also:
RelationalNode.nextBatchDirect()
-
getNodeString
protected void getNodeString(StringBuffer str)
- Overrides:
getNodeStringin classRelationalNode
-
clone
public Object clone()
Description copied from class:RelationalNodeAll the implementation of Cloneable interface need to implement clone() method. The plan is only clonable in the pre-execution stage, not the execution state (things like program state, result sets, etc). It's only safe to call that method in between query processings, in other words, it's only safe to call clone() on a plan after nextTuple() returns null, meaning the plan has finished processing.- Specified by:
clonein classRelationalNode
-
copyTo
protected void copyTo(SelectNode target)
-
getDescriptionProperties
public PlanNode getDescriptionProperties()
- Overrides:
getDescriptionPropertiesin classRelationalNode
-
getObjects
public Collection<? extends LanguageObject> getObjects()
- Specified by:
getObjectsin classSubqueryAwareRelationalNode
-
setShouldEvaluateExpressions
public void setShouldEvaluateExpressions(boolean shouldEvaluate)
-
open
public void open() throws TeiidComponentException, TeiidProcessingException- Overrides:
openin classRelationalNode- Throws:
TeiidComponentExceptionTeiidProcessingException
-
-