org.pentaho.di.trans.steps.textfileinput
Class TextFileInput

java.lang.Object
  extended by org.pentaho.di.trans.step.BaseStep
      extended by org.pentaho.di.trans.steps.textfileinput.TextFileInput
All Implemented Interfaces:
HasLogChannelInterface, LoggingObjectInterface, VariableSpace, StepInterface

public class TextFileInput
extends BaseStep
implements StepInterface

Read all sorts of text files, convert them to rows and writes these to one or more output streams.

Since:
4-apr-2003
Author:
Matt

Field Summary
 
Fields inherited from class org.pentaho.di.trans.step.BaseStep
first, linesInput, linesOutput, linesRead, linesRejected, linesSkipped, linesUpdated, linesWritten, terminator, terminator_rows
 
Constructor Summary
TextFileInput(StepMeta stepMeta, StepDataInterface stepDataInterface, int copyNr, TransMeta transMeta, Trans trans)
           
 
Method Summary
static Object[] convertLineToRow(LogChannelInterface log, TextFileLine textFileLine, InputFileMetaInterface info, Object[] passThruFields, int nrPassThruFields, RowMetaInterface outputRowMeta, RowMetaInterface convertRowMeta, String fname, long rowNr, String delimiter, FileErrorHandler errorHandler, boolean addShortFilename, boolean addExtension, boolean addPath, boolean addSize, boolean addIsHidden, boolean addLastModificationDate, boolean addUri, boolean addRootUri, String shortFilename, String path, boolean hidden, Date modificationDateTime, String uri, String rooturi, String extension, long size)
           
static Object[] convertLineToRow(LogChannelInterface log, TextFileLine textFileLine, InputFileMetaInterface info, RowMetaInterface outputRowMeta, RowMetaInterface convertRowMeta, String fname, long rowNr, String delimiter, FileErrorHandler errorHandler, boolean addShortFilename, boolean addExtension, boolean addPath, boolean addSize, boolean addIsHidden, boolean addLastModificationDate, boolean addUri, boolean addRootUri, String shortFilename, String path, boolean hidden, Date modificationDateTime, String uri, String rooturi, String extension, long size)
          Deprecated. Use #convertLineToRow(TextFileLine,InputFileMetaInterface,Object[],int,RowMetaInterface,RowMetaInterface,String,long, FileErrorHandler) instead
static String[] convertLineToStrings(LogChannelInterface log, String line, InputFileMetaInterface inf, String delimiter)
           
 void dispose(StepMetaInterface smi, StepDataInterface sdi)
          Dispose of this step: close files, empty logs, etc.
static String getLine(LogChannelInterface log, InputStreamReader reader, EncodingType encodingType, int formatNr, StringBuilder line)
           
static String getLine(LogChannelInterface log, InputStreamReader reader, int formatNr, StringBuilder line)
           
static String[] guessStringsFromLine(LogChannelInterface log, String line, TextFileInputMeta inf, String delimiter)
           
 boolean init(StepMetaInterface smi, StepDataInterface sdi)
          Initialize and do work where other steps need to wait for...
 boolean isWaitingForData()
           
 boolean processRow(StepMetaInterface smi, StepDataInterface sdi)
          Perform the equivalent of processing one row.
 
Methods inherited from class org.pentaho.di.trans.step.BaseStep
addResultFile, addRowListener, addStepListener, batchComplete, buildLog, canProcessOneRow, cleanup, closeQuietly, copyVariablesFrom, decrementLinesRead, decrementLinesWritten, dispatch, environmentSubstitute, environmentSubstitute, findInputRowSet, findInputRowSet, findOutputRowSet, findOutputRowSet, getBooleanValueOfVariable, getClusterSize, getContainerObjectId, getCopy, getDispatcher, getErrorRowMeta, getErrors, getFilename, getInputRowMeta, getInputRowSets, getLinesInput, getLinesOutput, getLinesRead, getLinesRejected, getLinesSkipped, getLinesUpdated, getLinesWritten, getLogChannel, getLogChannelId, getLogFields, getLogLevel, getNextClassNr, getObjectCopy, getObjectId, getObjectName, getObjectRevision, getObjectType, getOutputRowSets, getParent, getParentVariableSpace, getPartitionID, getPartitionTargets, getPreviewRowMeta, getProcessed, getRegistrationDate, getRemoteInputSteps, getRemoteOutputSteps, getRepartitioning, getRepositoryDirectory, getResultFiles, getRow, getRowFrom, getRowListeners, getRuntime, getServerSockets, getSlaveNr, getSocketRepository, getStatus, getStatusDescription, getStepDataInterface, getStepID, getStepListeners, getStepMeta, getStepMetaInterface, getStepname, getTrans, getTransMeta, getTypeId, getUniqueStepCountAcrossSlaves, getUniqueStepNrAcrossSlaves, getVariable, getVariable, identifyErrorOutput, incrementLinesInput, incrementLinesOutput, incrementLinesRead, incrementLinesRejected, incrementLinesSkipped, incrementLinesUpdated, incrementLinesWritten, initBeforeStart, initializeVariablesFrom, injectVariables, isBasic, isDebug, isDetailed, isDistributed, isInitialising, isMapping, isPartitioned, isPaused, isRowLevel, isRunning, isStopped, isUsingThreadPriorityManagment, listVariables, logBasic, logBasic, logDebug, logDebug, logDetailed, logDetailed, logError, logError, logError, logMinimal, logMinimal, logRowlevel, logRowlevel, logSummary, markStart, markStop, outputIsDone, pauseRunning, putError, putRow, putRowTo, removeRowListener, resumeRunning, rowsetInputSize, rowsetOutputSize, safeModeChecking, setCarteObjectId, setCopy, setDistributed, setErrorRowMeta, setErrors, setInputRowMeta, setInputRowSets, setInternalVariables, setLinesInput, setLinesOutput, setLinesRead, setLinesRejected, setLinesSkipped, setLinesUpdated, setLinesWritten, setLogLevel, setOutputDone, setOutputRowSets, setParentVariableSpace, setPartitioned, setPartitionID, setPartitionTargets, setPaused, setPaused, setPreviewRowMeta, setRepartitioning, setRunning, setServerSockets, setSocketRepository, setStepDataInterface, setStepListeners, setStepMeta, setStepMetaInterface, setStepname, setStopped, setTransMeta, setUsingThreadPriorityManagment, setVariable, shareVariablesWith, stopAll, stopRunning, stopRunning, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.pentaho.di.trans.step.StepInterface
addRowListener, addStepListener, batchComplete, canProcessOneRow, cleanup, getCopy, getErrors, getInputRowSets, getLinesInput, getLinesOutput, getLinesRead, getLinesRejected, getLinesUpdated, getLinesWritten, getLogChannel, getOutputRowSets, getPartitionID, getProcessed, getResultFiles, getRow, getRowListeners, getRuntime, getStatus, getStepID, getStepMeta, getStepname, getTrans, identifyErrorOutput, initBeforeStart, isMapping, isPartitioned, isPaused, isRunning, isStopped, isUsingThreadPriorityManagment, markStart, markStop, pauseRunning, putRow, removeRowListener, resumeRunning, rowsetInputSize, rowsetOutputSize, setErrors, setLinesRejected, setOutputDone, setPartitioned, setPartitionID, setRepartitioning, setRunning, setStopped, setUsingThreadPriorityManagment, stopAll, stopRunning
 
Methods inherited from interface org.pentaho.di.core.variables.VariableSpace
copyVariablesFrom, environmentSubstitute, environmentSubstitute, getBooleanValueOfVariable, getParentVariableSpace, getVariable, getVariable, initializeVariablesFrom, injectVariables, listVariables, setParentVariableSpace, setVariable, shareVariablesWith
 

Constructor Detail

TextFileInput

public TextFileInput(StepMeta stepMeta,
                     StepDataInterface stepDataInterface,
                     int copyNr,
                     TransMeta transMeta,
                     Trans trans)
Method Detail

getLine

public static final String getLine(LogChannelInterface log,
                                   InputStreamReader reader,
                                   int formatNr,
                                   StringBuilder line)
                            throws KettleFileException
Throws:
KettleFileException

getLine

public static final String getLine(LogChannelInterface log,
                                   InputStreamReader reader,
                                   EncodingType encodingType,
                                   int formatNr,
                                   StringBuilder line)
                            throws KettleFileException
Throws:
KettleFileException

guessStringsFromLine

public static final String[] guessStringsFromLine(LogChannelInterface log,
                                                  String line,
                                                  TextFileInputMeta inf,
                                                  String delimiter)
                                           throws KettleException
Throws:
KettleException

convertLineToStrings

public static final String[] convertLineToStrings(LogChannelInterface log,
                                                  String line,
                                                  InputFileMetaInterface inf,
                                                  String delimiter)
                                           throws KettleException
Throws:
KettleException

convertLineToRow

public static final Object[] convertLineToRow(LogChannelInterface log,
                                              TextFileLine textFileLine,
                                              InputFileMetaInterface info,
                                              RowMetaInterface outputRowMeta,
                                              RowMetaInterface convertRowMeta,
                                              String fname,
                                              long rowNr,
                                              String delimiter,
                                              FileErrorHandler errorHandler,
                                              boolean addShortFilename,
                                              boolean addExtension,
                                              boolean addPath,
                                              boolean addSize,
                                              boolean addIsHidden,
                                              boolean addLastModificationDate,
                                              boolean addUri,
                                              boolean addRootUri,
                                              String shortFilename,
                                              String path,
                                              boolean hidden,
                                              Date modificationDateTime,
                                              String uri,
                                              String rooturi,
                                              String extension,
                                              long size)
                                       throws KettleException
Deprecated. Use #convertLineToRow(TextFileLine,InputFileMetaInterface,Object[],int,RowMetaInterface,RowMetaInterface,String,long, FileErrorHandler) instead

Throws:
KettleException

convertLineToRow

public static final Object[] convertLineToRow(LogChannelInterface log,
                                              TextFileLine textFileLine,
                                              InputFileMetaInterface info,
                                              Object[] passThruFields,
                                              int nrPassThruFields,
                                              RowMetaInterface outputRowMeta,
                                              RowMetaInterface convertRowMeta,
                                              String fname,
                                              long rowNr,
                                              String delimiter,
                                              FileErrorHandler errorHandler,
                                              boolean addShortFilename,
                                              boolean addExtension,
                                              boolean addPath,
                                              boolean addSize,
                                              boolean addIsHidden,
                                              boolean addLastModificationDate,
                                              boolean addUri,
                                              boolean addRootUri,
                                              String shortFilename,
                                              String path,
                                              boolean hidden,
                                              Date modificationDateTime,
                                              String uri,
                                              String rooturi,
                                              String extension,
                                              long size)
                                       throws KettleException
Throws:
KettleException

processRow

public boolean processRow(StepMetaInterface smi,
                          StepDataInterface sdi)
                   throws KettleException
Description copied from interface: StepInterface
Perform the equivalent of processing one row. Typically this means reading a row from input (getRow()) and passing a row to output (putRow)).

Specified by:
processRow in interface StepInterface
Overrides:
processRow in class BaseStep
Parameters:
smi - The steps metadata to work with
sdi - The steps temporary working data to work with (database connections, result sets, caches, temporary variables, etc.)
Returns:
false if no more rows can be processed or an error occurred.
Throws:
KettleException

init

public boolean init(StepMetaInterface smi,
                    StepDataInterface sdi)
Description copied from interface: StepInterface
Initialize and do work where other steps need to wait for...

Specified by:
init in interface StepInterface
Overrides:
init in class BaseStep
Parameters:
smi - The metadata to work with
sdi - The data to initialize

dispose

public void dispose(StepMetaInterface smi,
                    StepDataInterface sdi)
Description copied from interface: StepInterface
Dispose of this step: close files, empty logs, etc.

Specified by:
dispose in interface StepInterface
Overrides:
dispose in class BaseStep
Parameters:
smi - The metadata to work with
sdi - The data to dispose of

isWaitingForData

public boolean isWaitingForData()