org.teiid.query.processor.relational
Class ProjectIntoNode

java.lang.Object
  extended by org.teiid.query.processor.relational.RelationalNode
      extended by org.teiid.query.processor.relational.ProjectIntoNode
All Implemented Interfaces:
Cloneable, BatchCollector.BatchProducer

public class ProjectIntoNode
extends RelationalNode


Nested Class Summary
static class ProjectIntoNode.Mode
           
 
Constructor Summary
protected ProjectIntoNode()
           
  ProjectIntoNode(int nodeID)
           
 
Method Summary
 Object clone()
          All the implementation of Cloneable interface need to implement clone() method.
 void closeDirect()
           
 PlanNode getDescriptionProperties()
           
 ProjectIntoNode.Mode getMode()
           
 String getModelName()
           
protected  void getNodeString(StringBuffer str)
           
 boolean isTempGroupInsert()
           
 TupleBatch nextBatchDirect()
          Get batch from child node Walk through each row of child batch Bind values to insertCommand Execute insertCommand Update insertCount When no more data is available, output batch with single row containing insertCount
 void reset()
           
 void setIntoElements(List intoElements)
           
 void setIntoGroup(GroupSymbol group)
           
 void setMode(ProjectIntoNode.Mode mode)
           
 void setModelName(String modelName)
           
 
Methods inherited from class org.teiid.query.processor.relational.RelationalNode
addBatchRow, addChild, close, copy, createLookupMap, getBatchSize, getBufferManager, getChildren, getClassName, getConnectionID, getContext, getDataManager, getElements, getEstimateNodeCardinality, getFinalBuffer, getID, getNodeStatistics, getOutputElements, getParent, getProjectionIndexes, hasFinalBuffer, hasPendingRows, initialize, isBatchFull, isClosed, isLastBatch, nextBatch, nodeToString, open, projectTuple, projectTuple, projectTuple, pullBatch, setContext, 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

ProjectIntoNode

protected ProjectIntoNode()

ProjectIntoNode

public ProjectIntoNode(int nodeID)
Method Detail

reset

public void reset()
Overrides:
reset in class RelationalNode

setIntoGroup

public void setIntoGroup(GroupSymbol group)

setIntoElements

public void setIntoElements(List intoElements)

setModelName

public void setModelName(String modelName)

nextBatchDirect

public TupleBatch nextBatchDirect()
                           throws BlockedException,
                                  TeiidComponentException,
                                  TeiidProcessingException
Get batch from child node Walk through each row of child batch Bind values to insertCommand Execute insertCommand Update insertCount When no more data is available, output batch with single row containing insertCount

Specified by:
nextBatchDirect in class RelationalNode
Returns:
Throws:
BlockedException
TeiidComponentException
TeiidProcessingException - if exception related to user input occured

getNodeString

protected void getNodeString(StringBuffer str)
Overrides:
getNodeString in class RelationalNode

clone

public Object clone()
Description copied from class: RelationalNode
All 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:
clone in class RelationalNode

getDescriptionProperties

public PlanNode getDescriptionProperties()
Overrides:
getDescriptionProperties in class RelationalNode

getMode

public ProjectIntoNode.Mode getMode()

setMode

public void setMode(ProjectIntoNode.Mode mode)

isTempGroupInsert

public boolean isTempGroupInsert()

closeDirect

public void closeDirect()
Overrides:
closeDirect in class RelationalNode

getModelName

public String getModelName()


Copyright © 2012. All Rights Reserved.