Package org.pentaho.di.trans.step
Class BaseStepMeta
java.lang.Object
org.pentaho.di.trans.step.BaseStepMeta
- All Implemented Interfaces:
Cloneable,StepAttributesInterface
- Direct Known Subclasses:
AbstractStepMeta,BaseDatabaseStepMeta,BaseFileMeta,BaseSerializingMeta,CalculatorMeta,ConstantMeta,CsvInputMeta,DatabaseLookupMeta,DataGridMeta,DenormaliserMeta,DetectEmptyStreamMeta,DetectLastRowMeta,DummyTransMeta,ExecProcessMeta,ExecSQLMeta,FieldsChangeSequenceMeta,FieldSplitterMeta,FileExistsMeta,FileLockedMeta,FilesFromResultMeta,FilesToResultMeta,FilterRowsMeta,FixedInputMeta,FlattenerMeta,FormulaMeta,FuzzyMatchMeta,GetFileNamesMeta,GetFilesRowsCountMeta,GetSlaveSequenceMeta,GetSubFoldersMeta,GetVariableMeta,GroupByMeta,HTTPMeta,HTTPPOSTMeta,IfNullMeta,InjectorMeta,JaninoMeta,JavaFilterMeta,JobExecutorMeta,JoinRowsMeta,LDIFInputMeta,LoadFileInputMeta,MappingInputMeta,MappingOutputMeta,MemoryGroupByMeta,MergeJoinMeta,MergeRowsMeta,MultiMergeJoinMeta,NormaliserMeta,NullIfMeta,NumberRangeMeta,OlapInputMeta,ParGzipCsvInputMeta,PGPDecryptStreamMeta,PGPEncryptStreamMeta,PrioritizeStreamsMeta,ProcessFilesMeta,PropertyInputMeta,PropertyOutputMeta,RandomValueMeta,RegexEvalMeta,ReplaceStringMeta,ReservoirSamplingMeta,RowGeneratorMeta,RowsFromResultMeta,RowsToResultMeta,SampleRowsMeta,SasInputMeta,ScriptMeta,ScriptValuesMetaMod,SecretKeyGeneratorMeta,SelectValuesMeta,SetValueConstantMeta,SetValueFieldMeta,SetVariableMeta,SocketReaderMeta,SocketWriterMeta,SortedMergeMeta,SortRowsMeta,SplitFieldToRowsMeta,SQLFileOutputMeta,SSHMeta,StepMetastructureMeta,StepsMetricsMeta,StreamLookupMeta,StringCutMeta,StringOperationsMeta,SwitchCaseMeta,SymmetricCryptoTransMeta,SyslogMessageMeta,SystemDataMeta,TableCompareMeta,TextFileInputMeta,UniqueRowsByHashSetMeta,UniqueRowsMeta,UnivariateStatsMeta,UserDefinedJavaClassMeta,ValidatorMeta,ValueMapperMeta,WebServiceAvailableMeta,WebServiceMeta,WriteToLogMeta,XBaseInputMeta,ZipFileMeta
This class is responsible for implementing common functionality regarding step meta, such as logging. All Kettle
steps have an extension of this where private fields have been added with public accessors.
For example, the "Text File Output" step's TextFileOutputMeta class extends BaseStepMeta by adding fields for the output file name, compression, file format, etc...
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected ArrayList<org.pentaho.di.core.KettleAttributeInterface>protected org.pentaho.di.core.database.Database[]database connection object to use for searching fields & checking stepsprotected org.pentaho.di.core.logging.LogChannelInterfacestatic final org.pentaho.di.core.logging.LoggingObjectInterfaceprotected StepMetaprotected RepositoryThe repository that is being used for this stepstatic final String -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidanalyseImpact(List<DatabaseImpact> impact, TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev, String[] input, String[] output, org.pentaho.di.core.row.RowMetaInterface info) Deprecated.voidanalyseImpact(List<DatabaseImpact> impact, TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev, String[] input, String[] output, org.pentaho.di.core.row.RowMetaInterface info, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) Each step must be able to report on the impact it has on a database, table field, etc.voidCall this to cancel trailing database queries (too long running, etc)voidcheck(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) voidcheck(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) voidcheck(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, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) clone()protected StepInjectionMetaEntrycreateEntry(org.pentaho.di.core.KettleAttributeInterface attr, Class<?> PKG) Creates the entry.booleanThis method is added to exclude certain steps from copy/distribute checking.booleanThis method is added to exclude certain steps from layout checking.exportResources(org.pentaho.di.core.variables.VariableSpace space, Map<String, ResourceDefinition> definitions, ResourceNamingInterface resourceNamingInterface, Repository repository) exportResources(org.pentaho.di.core.variables.VariableSpace space, Map<String, ResourceDefinition> definitions, ResourceNamingInterface resourceNamingInterface, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) org.pentaho.di.core.KettleAttributeInterfacefindAttribute(String key) org.pentaho.di.core.KettleAttributeInterfacefindParent(List<org.pentaho.di.core.KettleAttributeInterface> attributes, String parentId) protected StepInjectionMetaEntryfindParentEntry(List<StepInjectionMetaEntry> entries, String key) Find parent entry.getDescription(String attributeKey) Deprecated.As of release 8.1, use annotated-based dialog insteadvoidgetFields(org.pentaho.di.core.row.RowMetaInterface inputRowMeta, String name, org.pentaho.di.core.row.RowMetaInterface[] info, StepMeta nextStep, org.pentaho.di.core.variables.VariableSpace space) voidgetFields(org.pentaho.di.core.row.RowMetaInterface inputRowMeta, String name, org.pentaho.di.core.row.RowMetaInterface[] info, StepMeta nextStep, org.pentaho.di.core.variables.VariableSpace space, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) Gets the fields.org.pentaho.di.core.logging.LogChannelInterfacegetLog()Gets the log.Gets the log channel id.getName()Gets the name.Gets the object copy.org.pentaho.di.repository.ObjectIdGets the object id.org.pentaho.di.repository.ObjectRevisionGets the object revision.org.pentaho.di.core.logging.LoggingObjectTypeGets the object type.org.pentaho.di.core.logging.LoggingObjectInterfaceGets the parent.Gets the parent step meta.String[]getRepCode(String attributeKey) org.pentaho.di.repository.RepositoryDirectoryGets the repository directory.org.pentaho.di.core.row.RowMetaInterfaceDeprecated.org.pentaho.di.core.row.RowMetaInterfacegetRequiredFields(org.pentaho.di.core.variables.VariableSpace space) The natural way of data flow in a transformation is source-to-target.getResourceDependencies(TransMeta transMeta, StepMeta stepInfo) Get a list of all the resource dependencies that the step is depending on.org.pentaho.di.core.SQLStatementgetSQLStatements(TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev) org.pentaho.di.core.SQLStatementgetSQLStatements(TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) Standard method to return an SQLStatement object with SQL statements that the step needs in order to work correctly.getStepInjectionMetadataEntries(Class<?> PKG) Describe the metadata attributes that can be injected into this step metadata object.getStepIOMeta(boolean createIfAbsent) Returns the Input/Output metadata for this step.Deprecated.Use annotation-based injection insteadorg.pentaho.di.core.row.RowMetaInterfaceGets the table fields.getTooltip(String attributeKey) Default a step doesn't use any arguments.org.pentaho.di.core.database.DatabaseMeta[]This method returns all the database connections that are used by the step.String[]getXML()Produces the XML string that describes this step's information.getXmlCode(String attributeKey) voidhandleStreamSelection(StreamInterface stream) When an optional stream is selected, this method is called to handled the ETL metadata implications of that.booleanChecks for changed.booleanbooleanisBasic()Checks if is basic.booleanisDebug()Checks if is debug.booleanChecks if is detailed.boolean[]booleanChecks if is row level.loadReferencedObject(int index, Repository rep, org.pentaho.di.core.variables.VariableSpace space) Deprecated.loadReferencedObject(int index, Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.core.variables.VariableSpace space) protected voidLoad step attributes.voidDeprecated.voidloadXML(Node stepnode, List<org.pentaho.di.core.database.DatabaseMeta> databases, Map<String, org.pentaho.di.core.Counter> counters) Deprecated.voidloadXML(Node stepnode, List<org.pentaho.di.core.database.DatabaseMeta> databases, org.pentaho.metastore.api.IMetaStore metaStore) voidLog basic.voidLog basic.voidLog debug.voidLog debug.voidlogDetailed(String message) Log detailed.voidlogDetailed(String message, Object... arguments) Log detailed.voidLog error.voidLog error.voidLog error.voidlogMinimal(String message) Log minimal.voidlogMinimal(String message, Object... arguments) Log minimal.voidlogRowlevel(String message) Log rowlevel.voidlogRowlevel(String message, Object... arguments) Log rowlevel.voidlookupRepositoryReferences(Repository repository) Look up the references after importvoidreadRep(Repository rep, org.pentaho.di.repository.ObjectId idStep, List<org.pentaho.di.core.database.DatabaseMeta> databases) Deprecated.voidreadRep(Repository rep, org.pentaho.di.repository.ObjectId id_step, List<org.pentaho.di.core.database.DatabaseMeta> databases, Map<String, org.pentaho.di.core.Counter> counters) Deprecated.voidreadRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_step, List<org.pentaho.di.core.database.DatabaseMeta> databases) voidReset step io meta.voidsaveRep(Repository rep, org.pentaho.di.repository.ObjectId id_transformation, org.pentaho.di.repository.ObjectId id_step) Deprecated.voidsaveRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_transformation, org.pentaho.di.repository.ObjectId id_step) voidsearchInfoAndTargetSteps(List<StepMeta> steps) Change step names into step objects to allow them to be name-changed etc.voidSets the changed.voidsetChanged(boolean ch) Sets the changed.voidsetParentStepMeta(StepMeta parentStepMeta) Sets the parent step meta.voidsetStepIOMeta(StepIOMetaInterface value) Sets the Input/Output metadata for this step.boolean
-
Field Details
-
loggingObject
public static final org.pentaho.di.core.logging.LoggingObjectInterface loggingObject -
STEP_ATTRIBUTES_FILE
- See Also:
-
databases
protected org.pentaho.di.core.database.Database[] databasesdatabase connection object to use for searching fields & checking steps -
repository
The repository that is being used for this step -
parentStepMeta
-
log
protected org.pentaho.di.core.logging.LogChannelInterface log -
attributes
-
-
Constructor Details
-
BaseStepMeta
public BaseStepMeta()Instantiates a new base step meta.
-
-
Method Details
-
clone
-
setChanged
public void setChanged(boolean ch) Sets the changed.- Parameters:
ch- the new changed
-
setChanged
public void setChanged()Sets the changed. -
hasChanged
public boolean hasChanged()Checks for changed.- Returns:
- true, if successful
-
getTableFields
public org.pentaho.di.core.row.RowMetaInterface getTableFields()Gets the table fields.- Returns:
- the table fields
-
getXML
Produces the XML string that describes this step's information.- Returns:
- String containing the XML describing this step.
- Throws:
org.pentaho.di.core.exception.KettleException- in case there is an XML conversion or encoding error
-
getFields
@Deprecated public void getFields(org.pentaho.di.core.row.RowMetaInterface inputRowMeta, String name, org.pentaho.di.core.row.RowMetaInterface[] info, StepMeta nextStep, org.pentaho.di.core.variables.VariableSpace space) throws org.pentaho.di.core.exception.KettleStepException Deprecated.Gets the fields.- Parameters:
inputRowMeta- the input row meta that is modified in this method to reflect the output row metadata of the stepname- Name of the step to use as input for the origin field in the valuesinfo- Fields used as extra lookup informationnextStep- the next step that is targetedspace- the space The variable space to use to replace variables- Throws:
org.pentaho.di.core.exception.KettleStepException- the kettle step exception
-
getFields
public void getFields(org.pentaho.di.core.row.RowMetaInterface inputRowMeta, String name, org.pentaho.di.core.row.RowMetaInterface[] info, StepMeta nextStep, org.pentaho.di.core.variables.VariableSpace space, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) throws org.pentaho.di.core.exception.KettleStepException Gets the fields.- Parameters:
inputRowMeta- the input row meta that is modified in this method to reflect the output row metadata of the stepname- Name of the step to use as input for the origin field in the valuesinfo- Fields used as extra lookup informationnextStep- the next step that is targetedspace- the space The variable space to use to replace variablesrepository- 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- Throws:
org.pentaho.di.core.exception.KettleStepException- the kettle step exception
-
analyseImpact
@Deprecated public void analyseImpact(List<DatabaseImpact> impact, TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev, String[] input, String[] output, org.pentaho.di.core.row.RowMetaInterface info) throws org.pentaho.di.core.exception.KettleStepException Deprecated.Each step must be able to report on the impact it has on a database, table field, etc.- Parameters:
impact- The list of impacts @see org.pentaho.di.transMeta.DatabaseImpacttransMeta- The transformation informationstepMeta- The step informationprev- The fields entering this stepinput- The previous step namesoutput- The output step namesinfo- The fields used as information by this step- Throws:
org.pentaho.di.core.exception.KettleStepException
-
analyseImpact
public void analyseImpact(List<DatabaseImpact> impact, TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev, String[] input, String[] output, org.pentaho.di.core.row.RowMetaInterface info, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) throws org.pentaho.di.core.exception.KettleStepException Each step must be able to report on the impact it has on a database, table field, etc.- Parameters:
impact- The list of impacts @see org.pentaho.di.transMeta.DatabaseImpacttransMeta- The transformation informationstepMeta- The step informationprev- The fields entering this stepinput- The previous step namesoutput- The output step namesinfo- The fields used as information by this steprepository- 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- Throws:
org.pentaho.di.core.exception.KettleStepException
-
getSQLStatements
@Deprecated public org.pentaho.di.core.SQLStatement getSQLStatements(TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev) throws org.pentaho.di.core.exception.KettleStepException Standard method to return one or more SQLStatement objects that the step needs in order to work correctly. This can mean "create table", "create index" statements but also "alter table ... add/drop/modify" statements.- Parameters:
transMeta- TransInfo object containing the complete transformationstepMeta- StepMeta object containing the complete stepprev- Row containing meta-data for the input fields (no data)- Returns:
- The SQL Statements for this step or null if an error occurred. If nothing has to be done, the SQLStatement.getSQL() == null.
- Throws:
org.pentaho.di.core.exception.KettleStepException
-
getSQLStatements
public org.pentaho.di.core.SQLStatement getSQLStatements(TransMeta transMeta, StepMeta stepMeta, org.pentaho.di.core.row.RowMetaInterface prev, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) throws org.pentaho.di.core.exception.KettleStepException Standard method to return an SQLStatement object with SQL statements that the step needs in order to work correctly. This can mean "create table", "create index" statements but also "alter table ... add/drop/modify" statements.- Parameters:
transMeta- TransInfo object containing the complete transformationstepMeta- StepMeta object containing the complete stepprev- Row containing meta-data for the input fields (no data)repository- 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- Returns:
- The SQL Statements for this step. If nothing has to be done, the SQLStatement.getSQL() == null. @see SQLStatement
- Throws:
org.pentaho.di.core.exception.KettleStepException
-
cancelQueries
public void cancelQueries() throws org.pentaho.di.core.exception.KettleDatabaseExceptionCall this to cancel trailing database queries (too long running, etc)- Throws:
org.pentaho.di.core.exception.KettleDatabaseException
-
getUsedArguments
Default a step doesn't use any arguments. Implement this to notify the GUI that a window has to be displayed BEFORE launching a transformation.- Returns:
- A row of argument values. (name and optionally a default value)
-
getRequiredFields
@Deprecated public org.pentaho.di.core.row.RowMetaInterface getRequiredFields() throws org.pentaho.di.core.exception.KettleExceptionDeprecated.The natural way of data flow in a transformation is source-to-target. However, this makes mapping to target tables difficult to do. To help out here, we supply information to the transformation meta-data model about which fields are required for a step. This allows us to automate certain tasks like the mapping to pre-defined tables. The Table Output step in this case will output the fields in the target table using this method.This default implementation returns an empty row meaning that no fields are required for this step to operate.
- Returns:
- the required fields for this steps meta data.
- Throws:
org.pentaho.di.core.exception.KettleException- in case the required fields can't be determined
-
getRequiredFields
public org.pentaho.di.core.row.RowMetaInterface getRequiredFields(org.pentaho.di.core.variables.VariableSpace space) throws org.pentaho.di.core.exception.KettleException The natural way of data flow in a transformation is source-to-target. However, this makes mapping to target tables difficult to do. To help out here, we supply information to the transformation meta-data model about which fields are required for a step. This allows us to automate certain tasks like the mapping to pre-defined tables. The Table Output step in this case will output the fields in the target table using this method.This default implementation returns an empty row meaning that no fields are required for this step to operate.
- Parameters:
space- the variable space to use to do variable substitution.- Returns:
- the required fields for this steps meta data.
- Throws:
org.pentaho.di.core.exception.KettleException- in case the required fields can't be determined
-
getUsedDatabaseConnections
public org.pentaho.di.core.database.DatabaseMeta[] getUsedDatabaseConnections()This method returns all the database connections that are used by the step.- Returns:
- an array of database connections meta-data. Return an empty array if no connections are used.
-
getUsedLibraries
- Returns:
- the libraries that this step or plug-in uses.
-
supportsErrorHandling
public boolean supportsErrorHandling()- Returns:
- true if this step supports error "reporting" on rows: the ability to send rows to a certain target step.
-
excludeFromRowLayoutVerification
public boolean excludeFromRowLayoutVerification()This method is added to exclude certain steps from layout checking.- Since:
- 2.5.0
-
excludeFromCopyDistributeVerification
public boolean excludeFromCopyDistributeVerification()This method is added to exclude certain steps from copy/distribute checking.- Since:
- 4.0.0
-
getResourceDependencies
Get a list of all the resource dependencies that the step is depending on.- Returns:
- a list of all the resource dependencies that the step is depending on
-
exportResources
@Deprecated public String exportResources(org.pentaho.di.core.variables.VariableSpace space, Map<String, ResourceDefinition> definitions, ResourceNamingInterface resourceNamingInterface, Repository repository) throws org.pentaho.di.core.exception.KettleExceptionDeprecated.Export resources.- Parameters:
space- the spacedefinitions- the definitionsresourceNamingInterface- the resource naming interfacerepository- the repository- Returns:
- the string
- Throws:
org.pentaho.di.core.exception.KettleException- the kettle exception
-
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.KettleException- Throws:
org.pentaho.di.core.exception.KettleException
-
getDialogClassName
Deprecated.As of release 8.1, use annotated-based dialog insteadThis returns the expected name for the dialog that edits a job entry. The expected name is in the org.pentaho.di.ui tree and has a class name that is the name of the job entry with 'Dialog' added to the end.e.g. if the job entry is org.pentaho.di.job.entries.zipfile.JobEntryZipFile the dialog would be org.pentaho.di.ui.job.entries.zipfile.JobEntryZipFileDialog
If the dialog class for a job entry does not match this pattern it should override this method and return the appropriate class name
- Returns:
- full class name of the dialog
-
getParentStepMeta
Gets the parent step meta.- Returns:
- the parent step meta
-
setParentStepMeta
Sets the parent step meta.- Parameters:
parentStepMeta- the new parent step meta
-
getLog
public org.pentaho.di.core.logging.LogChannelInterface getLog()Gets the log.- Returns:
- the log
-
isBasic
public boolean isBasic()Checks if is basic.- Returns:
- true, if is basic
-
isDetailed
public boolean isDetailed()Checks if is detailed.- Returns:
- true, if is detailed
-
isDebug
public boolean isDebug()Checks if is debug.- Returns:
- true, if is debug
-
isRowLevel
public boolean isRowLevel()Checks if is row level.- Returns:
- true, if is row level
-
logMinimal
Log minimal.- Parameters:
message- the message
-
logMinimal
Log minimal.- Parameters:
message- the messagearguments- the arguments
-
logBasic
Log basic.- Parameters:
message- the message
-
logBasic
Log basic.- Parameters:
message- the messagearguments- the arguments
-
logDetailed
Log detailed.- Parameters:
message- the message
-
logDetailed
Log detailed.- Parameters:
message- the messagearguments- the arguments
-
logDebug
Log debug.- Parameters:
message- the message
-
logDebug
Log debug.- Parameters:
message- the messagearguments- the arguments
-
logRowlevel
Log rowlevel.- Parameters:
message- the message
-
logRowlevel
Log rowlevel.- Parameters:
message- the messagearguments- the arguments
-
logError
Log error.- Parameters:
message- the message
-
logError
Log error.- Parameters:
message- the messagee- the e
-
logError
Log error.- Parameters:
message- the messagearguments- the arguments
-
getLogChannelId
Gets the log channel id.- Returns:
- the log channel id
-
getName
Gets the name.- Returns:
- the name
-
getObjectCopy
Gets the object copy.- Returns:
- the object copy
-
getObjectId
public org.pentaho.di.repository.ObjectId getObjectId()Gets the object id.- Returns:
- the object id
-
getObjectRevision
public org.pentaho.di.repository.ObjectRevision getObjectRevision()Gets the object revision.- Returns:
- the object revision
-
getObjectType
public org.pentaho.di.core.logging.LoggingObjectType getObjectType()Gets the object type.- Returns:
- the object type
-
getParent
public org.pentaho.di.core.logging.LoggingObjectInterface getParent()Gets the parent.- Returns:
- the parent
-
getRepositoryDirectory
public org.pentaho.di.repository.RepositoryDirectory getRepositoryDirectory()Gets the repository directory.- Returns:
- the repository directory
-
getStepIOMeta
-
getStepIOMeta
Returns the Input/Output metadata for this step. By default, each step produces and accepts optional input. -
setStepIOMeta
Sets the Input/Output metadata for this step. By default, each step produces and accepts optional input.- Parameters:
value- the StepIOMetaInterface to set for this step.
-
getOptionalStreams
- Returns:
- The list of optional input streams. It allows the user to select from a list of possible actions like "New target step"
-
handleStreamSelection
When an optional stream is selected, this method is called to handled the ETL metadata implications of that.- Parameters:
stream- The optional stream to handle.
-
resetStepIoMeta
public void resetStepIoMeta()Reset step io meta. -
searchInfoAndTargetSteps
Change step names into step objects to allow them to be name-changed etc.- Parameters:
steps- the steps to reference
-
getStepMetaInjectionInterface
Deprecated.Use annotation-based injection instead- Returns:
- Optional interface that allows an external program to inject step metadata in a standardized fasion. This method will return null if the interface is not available for this step.
-
extractStepMetadataEntries
public List<StepInjectionMetaEntry> extractStepMetadataEntries() throws org.pentaho.di.core.exception.KettleException- 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
-
findParentEntry
Find parent entry.- Parameters:
entries- the entrieskey- the key- Returns:
- the step injection meta entry
-
createEntry
protected StepInjectionMetaEntry createEntry(org.pentaho.di.core.KettleAttributeInterface attr, Class<?> PKG) Creates the entry.- Parameters:
attr- the attrPKG- the pkg- Returns:
- the step injection meta entry
-
getStepInjectionMetadataEntries
Describe the metadata attributes that can be injected into this step metadata object. -
loadStepAttributes
protected void loadStepAttributes() throws org.pentaho.di.core.exception.KettleExceptionLoad step attributes.- Throws:
org.pentaho.di.core.exception.KettleException- the kettle exception
-
findParent
public org.pentaho.di.core.KettleAttributeInterface findParent(List<org.pentaho.di.core.KettleAttributeInterface> attributes, String parentId) - Specified by:
findParentin interfaceStepAttributesInterface
-
findAttribute
- Specified by:
findAttributein interfaceStepAttributesInterface
-
getXmlCode
- Specified by:
getXmlCodein interfaceStepAttributesInterface
-
getRepCode
- Specified by:
getRepCodein interfaceStepAttributesInterface
-
getDescription
- Specified by:
getDescriptionin interfaceStepAttributesInterface
-
getTooltip
- Specified by:
getTooltipin interfaceStepAttributesInterface
-
getSupportedTransformationTypes
- Returns:
- The supported transformation types that this step supports.
-
hasRepositoryReferences
public boolean hasRepositoryReferences()- Returns:
- True if the job entry defines one or more references to a repository object.
-
lookupRepositoryReferences
public void lookupRepositoryReferences(Repository repository) throws org.pentaho.di.core.exception.KettleException Look up the references after import- Parameters:
repository- the repository to reference.- Throws:
org.pentaho.di.core.exception.KettleException
-
getReferencedObjectDescriptions
- Returns:
- The objects referenced in the step, like a mapping, a transformation, a job, ...
-
isReferencedObjectEnabled
public boolean[] isReferencedObjectEnabled() -
getActiveReferencedObjectDescription
- Returns:
- A description of the active referenced object in a transformation. Null if nothing special needs to be done or if the active metadata isn't different from design.
-
loadReferencedObject
@Deprecated public Object loadReferencedObject(int index, Repository rep, org.pentaho.di.core.variables.VariableSpace space) throws org.pentaho.di.core.exception.KettleException Deprecated.Load the referenced object- Parameters:
index- the object index to loadrep- the repositoryspace- the variable space to use- Returns:
- the referenced object once loaded
- Throws:
org.pentaho.di.core.exception.KettleException
-
loadReferencedObject
public Object loadReferencedObject(int index, Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.core.variables.VariableSpace space) throws org.pentaho.di.core.exception.KettleException - Throws:
org.pentaho.di.core.exception.KettleException
-
readRep
@Deprecated public void readRep(Repository rep, org.pentaho.di.repository.ObjectId idStep, List<org.pentaho.di.core.database.DatabaseMeta> databases) throws org.pentaho.di.core.exception.KettleException Deprecated.- Throws:
org.pentaho.di.core.exception.KettleException
-
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 - Throws:
org.pentaho.di.core.exception.KettleException
-
readRep
@Deprecated public void readRep(Repository rep, org.pentaho.di.repository.ObjectId id_step, List<org.pentaho.di.core.database.DatabaseMeta> databases, Map<String, org.pentaho.di.core.Counter> counters) throws org.pentaho.di.core.exception.KettleExceptionDeprecated.- Throws:
org.pentaho.di.core.exception.KettleException
-
loadXML
@Deprecated public void loadXML(Node stepnode, List<org.pentaho.di.core.database.DatabaseMeta> databases) throws org.pentaho.di.core.exception.KettleXMLException Deprecated.- Parameters:
stepnode-databases-- Throws:
org.pentaho.di.core.exception.KettleXMLException
-
loadXML
@Deprecated public void loadXML(Node stepnode, List<org.pentaho.di.core.database.DatabaseMeta> databases, Map<String, org.pentaho.di.core.Counter> counters) throws org.pentaho.di.core.exception.KettleXMLExceptionDeprecated.- Parameters:
stepnode-databases-- Throws:
org.pentaho.di.core.exception.KettleXMLException
-
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 - Throws:
org.pentaho.di.core.exception.KettleXMLException
-
saveRep
@Deprecated public void saveRep(Repository rep, org.pentaho.di.repository.ObjectId id_transformation, org.pentaho.di.repository.ObjectId id_step) throws org.pentaho.di.core.exception.KettleException Deprecated.- Parameters:
stepnode-databases-- Throws:
org.pentaho.di.core.exception.KettleXMLExceptionorg.pentaho.di.core.exception.KettleException
-
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 - Throws:
org.pentaho.di.core.exception.KettleException
-
check
@Deprecated 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) Deprecated.- Parameters:
remarks-transMeta-stepMeta-prev-input-output-info-
-
check
@Deprecated 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, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) Deprecated.- Parameters:
remarks-transMeta-stepMeta-prev-input-output-info-repository-metaStore-
-
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)
-
analyseImpact(List, TransMeta, StepMeta, RowMetaInterface, String[], String[], RowMetaInterface, Repository, IMetaStore)