|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.teiid.query.processor.relational.RelationalNode
public abstract class RelationalNode
| Constructor Summary | |
|---|---|
protected |
RelationalNode()
|
|
RelationalNode(int nodeID)
|
| Method Summary | |
|---|---|
protected void |
addBatchRow(java.util.List row)
|
void |
addChild(RelationalNode child)
|
abstract java.lang.Object |
clone()
All the implementation of Cloneable interface need to implement clone() method. |
void |
close()
|
void |
closeDirect()
|
protected void |
copy(RelationalNode source,
RelationalNode target)
|
static java.util.Map |
createLookupMap(java.util.List elements)
Useful function to build an element lookup map from an element list. |
protected int |
getBatchSize()
|
protected BufferManager |
getBufferManager()
|
RelationalNode[] |
getChildren()
|
protected java.lang.String |
getClassName()
Helper for the toString to get the class name from the full class name. |
protected java.lang.String |
getConnectionID()
|
CommandContext |
getContext()
|
protected ProcessorDataManager |
getDataManager()
|
PlanNode |
getDescriptionProperties()
|
java.util.List |
getElements()
|
java.lang.Number |
getEstimateNodeCardinality()
|
int |
getID()
|
RelationalNodeStatistics |
getNodeStatistics()
|
protected void |
getNodeString(java.lang.StringBuffer str)
|
java.util.List |
getOutputElements()
Get list of resolved elements describing output columns for this plan. |
RelationalNode |
getParent()
|
static int[] |
getProjectionIndexes(java.util.Map<SingleElementSymbol,java.lang.Integer> tupleElements,
java.util.List<? extends Expression> projectElements)
Helper method for all the node that will filter the elements needed for the next node. |
protected boolean |
hasPendingRows()
|
void |
initialize(CommandContext context,
BufferManager bufferManager,
ProcessorDataManager dataMgr)
|
protected boolean |
isBatchFull()
|
boolean |
isClosed()
Check if the node has been already closed |
boolean |
isLastBatch()
|
TupleBatch |
nextBatch()
Wrapper for nextBatchDirect that does performance timing - callers should always call this rather than nextBatchDirect(). |
protected abstract TupleBatch |
nextBatchDirect()
Template method for subclasses to implement. |
java.lang.String |
nodeToString()
Just print single node to string instead of node+recursive plan. |
void |
open()
|
static java.util.List<?> |
projectTuple(int[] indexes,
java.util.List<?> tupleValues)
|
protected TupleBatch |
pullBatch()
|
void |
reset()
|
void |
setContext(CommandContext context)
|
void |
setElements(java.util.List elements)
|
void |
setEstimateDepAccessCardinality(java.lang.Number depAccessEstimate)
|
void |
setEstimateDepJoinCost(java.lang.Number estimateDepJoinCost)
|
void |
setEstimateJoinCost(java.lang.Number estimateJoinCost)
|
void |
setEstimateNodeCardinality(java.lang.Number estimateNodeCardinality)
|
void |
setEstimateNodeSetSize(java.lang.Number setSizeEstimate)
|
void |
setID(int nodeID)
|
void |
setParent(RelationalNode parent)
|
protected void |
terminateBatches()
|
java.lang.String |
toString()
Print plantree structure starting at this node |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
protected RelationalNode()
public RelationalNode(int nodeID)
| Method Detail |
|---|
public boolean isLastBatch()
public void setContext(CommandContext context)
public void initialize(CommandContext context,
BufferManager bufferManager,
ProcessorDataManager dataMgr)
public CommandContext getContext()
public int getID()
public void setID(int nodeID)
protected BufferManager getBufferManager()
protected ProcessorDataManager getDataManager()
protected java.lang.String getConnectionID()
protected int getBatchSize()
public void reset()
public void setElements(java.util.List elements)
public java.util.List getOutputElements()
BatchCollector.BatchProducer
getOutputElements in interface BatchCollector.BatchProducerpublic java.util.List getElements()
public RelationalNode getParent()
public void setParent(RelationalNode parent)
public RelationalNode[] getChildren()
public void addChild(RelationalNode child)
protected void addBatchRow(java.util.List row)
protected void terminateBatches()
protected boolean isBatchFull()
protected boolean hasPendingRows()
protected TupleBatch pullBatch()
public void open()
throws TeiidComponentException,
TeiidProcessingException
TeiidComponentException
TeiidProcessingException
public final TupleBatch nextBatch()
throws BlockedException,
TeiidComponentException,
TeiidProcessingException
nextBatch in interface BatchCollector.BatchProducerBlockedException
TeiidComponentException
TeiidProcessingException - for business rule exception, related
to user input or modeling
protected abstract TupleBatch nextBatchDirect()
throws BlockedException,
TeiidComponentException,
TeiidProcessingException
BlockedException
TeiidComponentException
TeiidProcessingException - if exception related to user input occured
public final void close()
throws TeiidComponentException
TeiidComponentExceptionpublic void closeDirect()
public boolean isClosed()
public static int[] getProjectionIndexes(java.util.Map<SingleElementSymbol,java.lang.Integer> tupleElements,
java.util.List<? extends Expression> projectElements)
public static java.util.List<?> projectTuple(int[] indexes,
java.util.List<?> tupleValues)
public static java.util.Map createLookupMap(java.util.List elements)
elements - List of elements
public java.lang.String toString()
toString in class java.lang.Objectpublic java.lang.String nodeToString()
protected void getNodeString(java.lang.StringBuffer str)
protected java.lang.String getClassName()
fullClassName - Fully qualified class name
public abstract java.lang.Object clone()
clone in class java.lang.Object
protected void copy(RelationalNode source,
RelationalNode target)
public PlanNode getDescriptionProperties()
public RelationalNodeStatistics getNodeStatistics()
public void setEstimateNodeCardinality(java.lang.Number estimateNodeCardinality)
public void setEstimateNodeSetSize(java.lang.Number setSizeEstimate)
public void setEstimateDepAccessCardinality(java.lang.Number depAccessEstimate)
public void setEstimateDepJoinCost(java.lang.Number estimateDepJoinCost)
public void setEstimateJoinCost(java.lang.Number estimateJoinCost)
public java.lang.Number getEstimateNodeCardinality()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||