org.teiid.query.processor.relational
Class TextTableNode

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

public class TextTableNode
extends SubqueryAwareRelationalNode

Handles text file processing. TODO: unix style escape handling \t \n, etc. TODO: parse using something more memory safe than strings TODO: allow for escaping with fixed parsing TODO: allow for fixed parsing without new lines TODO: allow for a configurable line terminator


Constructor Summary
TextTableNode(int nodeID)
           
 
Method Summary
 TextTableNode clone()
          All the implementation of Cloneable interface need to implement clone() method.
 void closeDirect()
           
 void initialize(CommandContext context, BufferManager bufferManager, ProcessorDataManager dataMgr)
           
protected  TupleBatch nextBatchDirect()
          Template method for subclasses to implement.
 void reset()
           
 void setTable(TextTable table)
           
 
Methods inherited from class org.teiid.query.processor.relational.SubqueryAwareRelationalNode
getEvaluator, setReferenceValues
 
Methods inherited from class org.teiid.query.processor.relational.RelationalNode
addBatchRow, addChild, close, copy, createLookupMap, getBatchSize, getBufferManager, getChildren, getClassName, getConnectionID, getContext, getDataManager, getDescriptionProperties, getElements, getEstimateNodeCardinality, getID, getNodeStatistics, getNodeString, getOutputElements, getParent, getProjectionIndexes, hasPendingRows, isBatchFull, isClosed, isLastBatch, nextBatch, nodeToString, open, 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

TextTableNode

public TextTableNode(int nodeID)
Method Detail

initialize

public void initialize(CommandContext context,
                       BufferManager bufferManager,
                       ProcessorDataManager dataMgr)
Overrides:
initialize in class RelationalNode

closeDirect

public void closeDirect()
Overrides:
closeDirect in class SubqueryAwareRelationalNode

reset

public void reset()
Overrides:
reset in class SubqueryAwareRelationalNode

setTable

public void setTable(TextTable table)

clone

public TextTableNode 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

nextBatchDirect

protected TupleBatch nextBatchDirect()
                              throws BlockedException,
                                     TeiidComponentException,
                                     TeiidProcessingException
Description copied from class: RelationalNode
Template method for subclasses to implement.

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


Copyright © 2010. All Rights Reserved.