|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.metamatrix.query.processor.relational.RelationalNode
public abstract class RelationalNode
Field Summary |
---|
Constructor Summary | |
---|---|
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()
|
protected void |
copy(RelationalNode source,
RelationalNode target)
|
protected 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()
|
protected java.util.List |
getChildDescriptionProperties()
|
java.util.List |
getChildPlans()
Find all ProcessorPlans used by this node. |
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()
|
java.util.Map |
getDescriptionProperties()
Get a description as a set of properties of primitive types such as String, Integer, etc. |
java.util.List |
getElements()
|
java.lang.Number |
getEstimateNodeCardinality()
|
int |
getID()
|
java.util.Collection<? extends LanguageObject> |
getLanguageObjects()
|
RelationalNodeStatistics |
getNodeStatistics()
|
protected void |
getNodeString(java.lang.StringBuffer str)
|
RelationalNode |
getParent()
|
protected boolean |
hasPendingRows()
|
void |
initialize(CommandContext context,
BufferManager bufferManager,
ProcessorDataManager dataMgr)
|
protected boolean |
isBatchFull()
|
boolean |
isClosed()
Check if the node has been already closed |
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()
|
protected java.util.List |
projectTuple(java.util.Map tupleElements,
java.util.List tupleValues,
java.util.List projectElements)
Helper method for all the node that will filter the elements needed for the next node. |
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 |
---|
public RelationalNode(int nodeID)
Method Detail |
---|
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 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 MetaMatrixComponentException, MetaMatrixProcessingException
MetaMatrixComponentException
MetaMatrixProcessingException
public TupleBatch nextBatch() throws BlockedException, MetaMatrixComponentException, MetaMatrixProcessingException
BlockedException
MetaMatrixComponentException
MetaMatrixProcessingException
protected abstract TupleBatch nextBatchDirect() throws BlockedException, MetaMatrixComponentException, MetaMatrixProcessingException
BlockedException
MetaMatrixComponentException
MetaMatrixProcessingException
- if exception related to user input occuredpublic void close() throws MetaMatrixComponentException
MetaMatrixComponentException
public boolean isClosed()
protected java.util.List projectTuple(java.util.Map tupleElements, java.util.List tupleValues, java.util.List projectElements) throws MetaMatrixComponentException
MetaMatrixComponentException
protected java.util.Map createLookupMap(java.util.List elements)
elements
- List of elements
public java.lang.String toString()
toString
in class java.lang.Object
public 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 java.util.List getChildPlans()
public java.util.Collection<? extends LanguageObject> getLanguageObjects()
public java.util.Map getDescriptionProperties()
Describable
getDescriptionProperties
in interface Describable
protected java.util.List getChildDescriptionProperties()
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 |