Class TextFileOutputMeta
java.lang.Object
org.pentaho.di.trans.step.BaseStepMeta
org.pentaho.di.trans.steps.file.BaseFileMeta
org.pentaho.di.trans.steps.file.BaseFileOutputMeta
org.pentaho.di.trans.steps.textfileoutput.TextFileOutputMeta
- All Implemented Interfaces:
Cloneable
,StepAttributesInterface
,StepMetaInterface
- Direct Known Subclasses:
TextFileOutputLegacyMeta
-
Field Summary
Modifier and TypeFieldDescriptionprotected static final int
protected static final int
protected static final String[]
static final String[]
protected org.pentaho.di.core.row.ValueMetaInterface[]
Fields inherited from class org.pentaho.di.trans.steps.file.BaseFileOutputMeta
dateInFilename, DEFAULT_DATE_FORMAT, DEFAULT_TIME_FORMAT, extension, fileName, partNrInFilename, stepNrInFilename, timeInFilename
Fields inherited from class org.pentaho.di.trans.step.BaseStepMeta
attributes, databases, log, loggingObject, parentStepMeta, repository, STEP_ATTRIBUTES_FILE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
allocate
(int nrfields) buildFilename
(String filename, String extension, org.pentaho.di.core.variables.VariableSpace space, int stepnr, String partnr, int splitnr, boolean ziparchive, TextFileOutputMeta meta) buildFilename
(org.pentaho.di.core.variables.VariableSpace space, int stepnr, String partnr, int splitnr, boolean ziparchive) protected void
Creates a copy of the meta information of the output fields, so that we don't make any changes to the original meta information.void
check
(List<org.pentaho.di.core.CheckResultInterface> remarks, TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev, String[] input, String[] output, org.pentaho.di.core.row.RowMetaInterface info, org.pentaho.di.core.variables.VariableSpace space, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) Checks the settings of this step and puts the findings in a remarks List.clone()
Make an exact copy of this step, make sure to explicitly copy Collections etc.exportResources
(org.pentaho.di.core.variables.VariableSpace space, Map<String, ResourceDefinition> definitions, ResourceNamingInterface resourceNamingInterface, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) Since the exported transformation that runs this will reside in a ZIP file, we can't reference files relatively.int
protected org.pentaho.di.core.row.ValueMetaInterface[]
getNewLine
(String fformat) int
Deprecated.int
getSplitEvery
(org.pentaho.di.core.variables.VariableSpace varSpace) getStep
(StepMeta stepMeta, StepDataInterface stepDataInterface, int cnr, TransMeta transMeta, Trans trans) Get the executing step, needed by Trans to launch a step.Get a new instance of the appropriate data class.getXML()
Produces the XML string that describes this step's information.boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
boolean
isPadded()
boolean
protected String
loadSource
(Node stepnode, org.pentaho.metastore.api.IMetaStore metastore) protected String
loadSourceRep
(Repository rep, org.pentaho.di.repository.ObjectId id_step, org.pentaho.metastore.api.IMetaStore metaStore) void
loadXML
(Node stepnode, List<org.pentaho.di.core.database.DatabaseMeta> databases, org.pentaho.metastore.api.IMetaStore metaStore) Load the values for this step from an XML Nodeboolean
True if the step passes it's result data straight to the servlet output.void
protected void
void
readRep
(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_step, List<org.pentaho.di.core.database.DatabaseMeta> databases) Read the steps information from a Kettle repositoryprotected void
saveFileOptions
(StringBuilder retval) void
saveRep
(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_transformation, org.pentaho.di.repository.ObjectId id_step) Save the steps data into a Kettle repositoryprotected void
saveSource
(StringBuilder retVal, String value) protected void
saveSourceRep
(Repository rep, org.pentaho.di.repository.ObjectId id_transformation, org.pentaho.di.repository.ObjectId id_step, String value) void
setAddToResultFiles
(boolean addtoresultfilenamesin) void
setCreateParentFolder
(boolean createparentfolder) void
setDateInFilename
(boolean dateInFilename) void
Set default valuesvoid
setDoNotOpenNewFileInit
(boolean doNotOpenNewFileInit) void
setEnclosure
(String enclosure) void
setEnclosureFixDisabled
(boolean disableEnclosureFix) void
setEnclosureForced
(boolean enclosureForced) void
setEncoding
(String encoding) void
setEndedLine
(String endedLine) void
setFastDump
(boolean fastDump) void
setFileAppended
(boolean fileAppended) void
setFileFormat
(String fileFormat) void
setFilename
(String fileName) void
setFileNameField
(String fileNameField) void
setFileNameInField
(boolean fileNameInField) void
setFooterEnabled
(boolean footer) void
setHeaderEnabled
(boolean header) void
setNewline
(String newline) void
setOutputFields
(TextFileField[] outputFields) void
setPadded
(boolean padded) void
setPartNrInFilename
(boolean partNrInFilename) void
setSeparator
(String separator) void
setServletOutput
(boolean servletOutput) void
setSplitEvery
(int splitEvery) Deprecated.void
setSplitEveryRows
(String value) void
setStepNrInFilename
(boolean stepNrInFilename) void
setTimeInFilename
(boolean timeInFilename) Methods inherited from class org.pentaho.di.trans.steps.file.BaseFileOutputMeta
buildFilename, buildFilename, buildFilename, buildFilename, getDateTimeFormat, getExtension, getFileCompression, getFileName, getFilePaths, getFiles, getPartPrefix, isDateInFilename, isFileAsCommand, isPartNrInFilename, isSpecifyingFormat, isStepNrInFilename, isTimeInFilename, setDateTimeFormat, setExtension, setFileAsCommand, setFileCompression, setFileName, setSpecifyingFormat
Methods inherited from class org.pentaho.di.trans.steps.file.BaseFileMeta
writesToFile
Methods inherited from class org.pentaho.di.trans.step.BaseStepMeta
analyseImpact, analyseImpact, cancelQueries, check, check, createEntry, excludeFromCopyDistributeVerification, excludeFromRowLayoutVerification, exportResources, findAttribute, findParent, findParentEntry, getActiveReferencedObjectDescription, getDescription, getDialogClassName, getFields, getFields, getLog, getLogChannelId, getName, getObjectCopy, getObjectId, getObjectRevision, getObjectType, getOptionalStreams, getParent, getParentStepMeta, getReferencedObjectDescriptions, getRepCode, getRepositoryDirectory, getRequiredFields, getRequiredFields, getResourceDependencies, getSQLStatements, getSQLStatements, getStepInjectionMetadataEntries, getStepIOMeta, getStepIOMeta, getStepMetaInjectionInterface, getSupportedTransformationTypes, getTableFields, getTooltip, getUsedArguments, getUsedDatabaseConnections, getUsedLibraries, getXmlCode, handleStreamSelection, hasChanged, hasRepositoryReferences, isBasic, isDebug, isDetailed, isReferencedObjectEnabled, isRowLevel, loadReferencedObject, loadReferencedObject, loadStepAttributes, loadXML, loadXML, logBasic, logBasic, logDebug, logDebug, logDetailed, logDetailed, logError, logError, logError, logMinimal, logMinimal, logRowlevel, logRowlevel, lookupRepositoryReferences, readRep, readRep, resetStepIoMeta, saveRep, searchInfoAndTargetSteps, setChanged, setChanged, setParentStepMeta, setStepIOMeta, supportsErrorHandling
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.pentaho.di.trans.step.StepMetaInterface
analyseImpact, analyseImpact, cancelQueries, check, cleanAfterHopFromRemove, cleanAfterHopFromRemove, cleanAfterHopToRemove, excludeFromCopyDistributeVerification, excludeFromRowLayoutVerification, exportResources, fetchTransMeta, getActiveReferencedObjectDescription, getDialogClassName, getFields, getFields, getOptionalStreams, getParentStepMeta, getReferencedObjectDescriptions, getRequiredFields, getResourceDependencies, getSQLStatements, getSQLStatements, getStepIOMeta, getStepMetaInjectionInterface, getSupportedTransformationTypes, getTableFields, getUsedArguments, getUsedDatabaseConnections, getUsedLibraries, handleStreamSelection, hasChanged, hasRepositoryReferences, isReferencedObjectEnabled, loadReferencedObject, loadXML, lookupRepositoryReferences, readRep, resetStepIoMeta, saveRep, searchInfoAndTargetSteps, setChanged, setParentStepMeta, supportsErrorHandling
-
Field Details
-
FILE_COMPRESSION_TYPE_NONE
protected static final int FILE_COMPRESSION_TYPE_NONE- See Also:
-
FILE_COMPRESSION_TYPE_ZIP
protected static final int FILE_COMPRESSION_TYPE_ZIP- See Also:
-
fileCompressionTypeCodes
-
formatMapperLineTerminator
-
metaWithFieldOptions
protected org.pentaho.di.core.row.ValueMetaInterface[] metaWithFieldOptions
-
-
Constructor Details
-
TextFileOutputMeta
public TextFileOutputMeta()
-
-
Method Details
-
isServletOutput
public boolean isServletOutput() -
setServletOutput
public void setServletOutput(boolean servletOutput) -
setCreateParentFolder
public void setCreateParentFolder(boolean createparentfolder) - Parameters:
createparentfolder
- The createparentfolder to set.
-
isCreateParentFolder
public boolean isCreateParentFolder()- Returns:
- Returns the createparentfolder.
-
setDateInFilename
public void setDateInFilename(boolean dateInFilename) - Parameters:
dateInFilename
- The dateInFilename to set.
-
getEnclosure
- Returns:
- Returns the enclosure.
-
setEnclosure
- Parameters:
enclosure
- The enclosure to set.
-
isEnclosureForced
public boolean isEnclosureForced()- Returns:
- Returns the enclosureForced.
-
setEnclosureForced
public void setEnclosureForced(boolean enclosureForced) - Parameters:
enclosureForced
- The enclosureForced to set.
-
isEnclosureFixDisabled
public boolean isEnclosureFixDisabled()- Returns:
- Returns the enclosureFixDisabled.
-
setEnclosureFixDisabled
public void setEnclosureFixDisabled(boolean disableEnclosureFix) - Parameters:
disableEnclosureFix
- The enclosureFixDisabled to set.
-
isAddToResultFiles
public boolean isAddToResultFiles()- Returns:
- Returns the add to result filesname.
-
setAddToResultFiles
public void setAddToResultFiles(boolean addtoresultfilenamesin) - Parameters:
addtoresultfilenamesin
- The addtoresultfilenames to set.
-
isFileAppended
public boolean isFileAppended()- Returns:
- Returns the fileAppended.
-
setFileAppended
public void setFileAppended(boolean fileAppended) - Parameters:
fileAppended
- The fileAppended to set.
-
getFileFormat
- Returns:
- Returns the fileFormat.
-
setFileFormat
- Parameters:
fileFormat
- The fileFormat to set.
-
isHeaderEnabled
public boolean isHeaderEnabled()- Returns:
- Returns the header.
-
setHeaderEnabled
public void setHeaderEnabled(boolean header) - Parameters:
header
- The header to set.
-
getNewline
- Returns:
- Returns the newline.
-
setNewline
- Parameters:
newline
- The newline to set.
-
isPadded
public boolean isPadded()- Returns:
- Returns the padded.
-
setPadded
public void setPadded(boolean padded) - Parameters:
padded
- The padded to set.
-
isFastDump
public boolean isFastDump()- Returns:
- Returns the fastDump.
-
setFastDump
public void setFastDump(boolean fastDump) - Parameters:
fastDump
- The fastDump to set.
-
getSeparator
- Returns:
- Returns the separator.
-
setSeparator
- Parameters:
separator
- The separator to set.
-
isDoNotOpenNewFileInit
public boolean isDoNotOpenNewFileInit()- Returns:
- Returns the "do not open new file at init" flag.
-
setDoNotOpenNewFileInit
public void setDoNotOpenNewFileInit(boolean doNotOpenNewFileInit) - Parameters:
doNotOpenNewFileInit
- The "do not open new file at init" flag to set.
-
getSplitEvery
public int getSplitEvery()Deprecated.- Specified by:
getSplitEvery
in classBaseFileOutputMeta
- Returns:
- Returns the splitEvery.
-
getSplitEvery
public int getSplitEvery(org.pentaho.di.core.variables.VariableSpace varSpace) - Overrides:
getSplitEvery
in classBaseFileOutputMeta
- Parameters:
varSpace
- for variable substitution- Returns:
- At how many rows to split into another file.
-
getSplitEveryRows
- Returns:
- At how many rows to split into a new file.
-
setSplitEveryRows
- Parameters:
value
- At how many rows to split into a new file.
-
setSplitEvery
public void setSplitEvery(int splitEvery) Deprecated.- Specified by:
setSplitEvery
in classBaseFileOutputMeta
- Parameters:
splitEvery
- The splitEvery to set.
-
setStepNrInFilename
public void setStepNrInFilename(boolean stepNrInFilename) - Parameters:
stepNrInFilename
- The stepNrInFilename to set.
-
setPartNrInFilename
public void setPartNrInFilename(boolean partNrInFilename) - Parameters:
partNrInFilename
- The partNrInFilename to set.
-
setTimeInFilename
public void setTimeInFilename(boolean timeInFilename) - Parameters:
timeInFilename
- The timeInFilename to set.
-
getOutputFields
- Returns:
- Returns the outputFields.
-
setOutputFields
- Parameters:
outputFields
- The outputFields to set.
-
getEncoding
- Returns:
- The desired encoding of output file, null or empty if the default system encoding needs to be used.
-
setEncoding
- Parameters:
encoding
- The desired encoding of output file, null or empty if the default system encoding needs to be used.
-
getEndedLine
- Returns:
- The desired last line in the output file, null or empty if nothing has to be added.
-
setEndedLine
- Parameters:
endedLine
- The desired last line in the output file, null or empty if nothing has to be added.
-
isFileNameInField
public boolean isFileNameInField()- Returns:
- Is the file name coded in a field?
-
setFileNameInField
public void setFileNameInField(boolean fileNameInField) - Parameters:
fileNameInField
- Is the file name coded in a field?
-
getFileNameField
- Returns:
- The field name that contains the output file name.
-
setFileNameField
- Parameters:
fileNameField
- Name of the field that contains the file name
-
loadXML
public void loadXML(Node stepnode, List<org.pentaho.di.core.database.DatabaseMeta> databases, org.pentaho.metastore.api.IMetaStore metaStore) throws org.pentaho.di.core.exception.KettleXMLException Description copied from interface:StepMetaInterface
Load the values for this step from an XML Node- Specified by:
loadXML
in interfaceStepMetaInterface
- Overrides:
loadXML
in classBaseStepMeta
- Parameters:
stepnode
- the Node to get the info fromdatabases
- The available list of databases to reference tometaStore
- the metastore to optionally load external reference metadata from- Throws:
org.pentaho.di.core.exception.KettleXMLException
- When an unexpected XML error occurred. (malformed etc.)
-
allocate
public void allocate(int nrfields) -
clone
Description copied from interface:StepMetaInterface
Make an exact copy of this step, make sure to explicitly copy Collections etc.- Specified by:
clone
in interfaceStepMetaInterface
- Overrides:
clone
in classBaseStepMeta
- Returns:
- an exact copy of this step
-
readData
protected void readData(Node stepnode, org.pentaho.metastore.api.IMetaStore metastore) throws org.pentaho.di.core.exception.KettleXMLException - Throws:
org.pentaho.di.core.exception.KettleXMLException
-
readData
- Throws:
org.pentaho.di.core.exception.KettleXMLException
-
getNewLine
-
setDefault
public void setDefault()Description copied from interface:StepMetaInterface
Set default values- Specified by:
setDefault
in interfaceStepMetaInterface
-
buildFilename
-
buildFilename
public String buildFilename(String filename, String extension, org.pentaho.di.core.variables.VariableSpace space, int stepnr, String partnr, int splitnr, boolean ziparchive, TextFileOutputMeta meta) -
getXML
Description copied from class:BaseStepMeta
Produces the XML string that describes this step's information.- Specified by:
getXML
in interfaceStepMetaInterface
- Overrides:
getXML
in classBaseStepMeta
- Returns:
- String containing the XML describing this step.
-
saveFileOptions
-
readRep
public void readRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_step, List<org.pentaho.di.core.database.DatabaseMeta> databases) throws org.pentaho.di.core.exception.KettleException Description copied from interface:StepMetaInterface
Read the steps information from a Kettle repository- Specified by:
readRep
in interfaceStepMetaInterface
- Overrides:
readRep
in classBaseStepMeta
- Parameters:
rep
- The repository to read frommetaStore
- The MetaStore to read external information fromid_step
- The step IDdatabases
- The databases to reference- Throws:
org.pentaho.di.core.exception.KettleException
- When an unexpected error occurred (database, network, etc)
-
saveRep
public void saveRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_transformation, org.pentaho.di.repository.ObjectId id_step) throws org.pentaho.di.core.exception.KettleException Description copied from interface:StepMetaInterface
Save the steps data into a Kettle repository- Specified by:
saveRep
in interfaceStepMetaInterface
- Overrides:
saveRep
in classBaseStepMeta
- Parameters:
rep
- The Kettle repository to save tometaStore
- the metaStore to optionally write toid_transformation
- The transformation IDid_step
- The step ID- Throws:
org.pentaho.di.core.exception.KettleException
- When an unexpected error occurred (database, network, etc)
-
check
public void check(List<org.pentaho.di.core.CheckResultInterface> remarks, TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev, String[] input, String[] output, org.pentaho.di.core.row.RowMetaInterface info, org.pentaho.di.core.variables.VariableSpace space, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) Description copied from interface:StepMetaInterface
Checks the settings of this step and puts the findings in a remarks List.- Specified by:
check
in interfaceStepMetaInterface
- Overrides:
check
in classBaseStepMeta
- Parameters:
remarks
- The list to put the remarks in @see org.pentaho.di.core.CheckResultstepMeta
- The stepMeta to help checkingprev
- The fields coming from the previous stepinput
- The input step namesoutput
- The output step namesinfo
- The fields that are used as information by the stepspace
- the variable space to resolve variable expressions withrepository
- the repository to use to load Kettle metadata objects impacting the output fieldsmetaStore
- the MetaStore to use to load additional external data or metadata impacting the output fields
-
getStep
public StepInterface getStep(StepMeta stepMeta, StepDataInterface stepDataInterface, int cnr, TransMeta transMeta, Trans trans) Description copied from interface:StepMetaInterface
Get the executing step, needed by Trans to launch a step.- Specified by:
getStep
in interfaceStepMetaInterface
- Parameters:
stepMeta
- The step infostepDataInterface
- the step data interface linked to this step. Here the step can store temporary data, database connections, etc.cnr
- The copy nr to gettransMeta
- The transformation infotrans
- The launching transformation
-
getStepData
Description copied from interface:StepMetaInterface
Get a new instance of the appropriate data class. This data class implements the StepDataInterface. It basically contains the persisting data that needs to live on, even if a worker thread is terminated.- Specified by:
getStepData
in interfaceStepMetaInterface
- Returns:
- The appropriate StepDataInterface class.
-
exportResources
public String exportResources(org.pentaho.di.core.variables.VariableSpace space, Map<String, ResourceDefinition> definitions, ResourceNamingInterface resourceNamingInterface, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) throws org.pentaho.di.core.exception.KettleExceptionSince the exported transformation that runs this will reside in a ZIP file, we can't reference files relatively. So what this does is turn the name of the base path into an absolute path.- Specified by:
exportResources
in interfaceStepMetaInterface
- Overrides:
exportResources
in classBaseStepMeta
- Parameters:
space
- the variable space to usedefinitions
-resourceNamingInterface
-repository
- The repository to optionally load other resources from (to be converted to XML)metaStore
- the metaStore in which non-kettle metadata could reside.- Returns:
- the filename of the exported resource
- Throws:
org.pentaho.di.core.exception.KettleException
-
setFilename
-
extractStepMetadataEntries
public List<StepInjectionMetaEntry> extractStepMetadataEntries() throws org.pentaho.di.core.exception.KettleException- Specified by:
extractStepMetadataEntries
in interfaceStepMetaInterface
- Overrides:
extractStepMetadataEntries
in classBaseStepMeta
- Returns:
- The step metadata itself, not the metadata description. For lists it will have 0 entries in case there are no entries.
- Throws:
org.pentaho.di.core.exception.KettleException
-
loadSource
-
saveSource
-
loadSourceRep
protected String loadSourceRep(Repository rep, org.pentaho.di.repository.ObjectId id_step, org.pentaho.metastore.api.IMetaStore metaStore) throws org.pentaho.di.core.exception.KettleException - Throws:
org.pentaho.di.core.exception.KettleException
-
saveSourceRep
protected void saveSourceRep(Repository rep, org.pentaho.di.repository.ObjectId id_transformation, org.pentaho.di.repository.ObjectId id_step, String value) throws org.pentaho.di.core.exception.KettleException - Throws:
org.pentaho.di.core.exception.KettleException
-
passDataToServletOutput
public boolean passDataToServletOutput()True if the step passes it's result data straight to the servlet output. See exposing Kettle data over a web service http://wiki.pentaho.com/display/EAI/PDI+data+over+web+services- Specified by:
passDataToServletOutput
in interfaceStepMetaInterface
- Overrides:
passDataToServletOutput
in classBaseFileMeta
- Returns:
- True if the step passes it's result data straight to the servlet output, false otherwise
-
calcMetaWithFieldOptions
Creates a copy of the meta information of the output fields, so that we don't make any changes to the original meta information.
It is based on the original meta information and augmented with the information the user configured.
- Parameters:
data
-
-
getMetaWithFieldOptions
protected org.pentaho.di.core.row.ValueMetaInterface[] getMetaWithFieldOptions()
-
getSplitEvery(VariableSpace)
orgetSplitEveryRows()