org.pentaho.di.trans
Class TransMeta

java.lang.Object
  extended by org.pentaho.di.core.changed.ChangedFlag
      extended by org.pentaho.di.trans.TransMeta
All Implemented Interfaces:
Cloneable, Comparable<TransMeta>, Comparator<TransMeta>, ChangedFlagInterface, EngineMetaInterface, UndoInterface, org.pentaho.di.core.parameters.NamedParams, org.pentaho.di.core.variables.VariableSpace, org.pentaho.di.core.xml.XMLInterface, ResourceExportInterface, HasDatabasesInterface, HasSlaveServersInterface

public class TransMeta
extends ChangedFlag
implements org.pentaho.di.core.xml.XMLInterface, Comparator<TransMeta>, Comparable<TransMeta>, Cloneable, UndoInterface, HasDatabasesInterface, org.pentaho.di.core.variables.VariableSpace, EngineMetaInterface, ResourceExportInterface, HasSlaveServersInterface, org.pentaho.di.core.parameters.NamedParams

This class defines a transformation and offers methods to save and load it from XML or a PDI database repository.

Since:
20-jun-2003
Author:
Matt Casters

Field Summary
static String[] desc_type_undo
           
static int TYPE_UNDO_CHANGE
           
static int TYPE_UNDO_DELETE
           
static int TYPE_UNDO_NEW
           
static int TYPE_UNDO_POSITION
           
static String XML_TAG
           
static String XML_TAG_CLUSTERSCHEMAS
           
static String XML_TAG_NOTEPADS
           
static String XML_TAG_PARAMETERS
           
static String XML_TAG_PARTITIONSCHEMAS
           
static String XML_TAG_SLAVESERVERS
           
 
Constructor Summary
TransMeta()
          Builds a new empty transformation.
TransMeta(Node transnode, Repository rep)
          Parse a file containing the XML that describes the transformation.
TransMeta(Repository rep, String transname, RepositoryDirectory repdir)
          Read a transformation with a certain name from a repository
TransMeta(Repository rep, String transname, RepositoryDirectory repdir, boolean setInternalVariables)
          Read a transformation with a certain name from a repository
TransMeta(Repository rep, String transname, RepositoryDirectory repdir, org.pentaho.di.core.ProgressMonitorListener monitor)
          Read a transformation with a certain name from a repository
TransMeta(Repository rep, String transname, RepositoryDirectory repdir, org.pentaho.di.core.ProgressMonitorListener monitor, boolean setInternalVariables)
          Read a transformation with a certain name from a repository
TransMeta(String fname)
          Parse a file containing the XML that describes the transformation.
TransMeta(String fname, boolean setInternalVariables)
          Parse a file containing the XML that describes the transformation.
TransMeta(String fname, Repository rep)
          Parse a file containing the XML that describes the transformation.
TransMeta(String fname, Repository rep, boolean setInternalVariables)
          Parse a file containing the XML that describes the transformation.
TransMeta(String fname, Repository rep, boolean setInternalVariables, org.pentaho.di.core.variables.VariableSpace parentVariableSpace)
          Parse a file containing the XML that describes the transformation.
TransMeta(String fname, Repository rep, boolean setInternalVariables, org.pentaho.di.core.variables.VariableSpace parentVariableSpace, org.pentaho.di.core.gui.OverwritePrompter prompter)
          Parse a file containing the XML that describes the transformation.
TransMeta(String filename, String name, String[] arguments)
          Constructs a new transformation specifying the filename, name and arguments.
TransMeta(String fname, org.pentaho.di.core.variables.VariableSpace parentVariableSpace)
          Parse a file containing the XML that describes the transformation.
TransMeta(org.pentaho.di.core.variables.VariableSpace parent)
          Builds a new empty transformation with a set of variables to inherit from.
 
Method Summary
 void activateParameters()
           
 void addDatabase(org.pentaho.di.core.database.DatabaseMeta databaseMeta)
          Add a database connection to the transformation.
 void addDatabase(int p, org.pentaho.di.core.database.DatabaseMeta ci)
          Add a database connection to the transformation on a certain location.
 void addDependency(int p, TransDependency td)
          Add a new dependency to the transformation on a certain location
 void addDependency(TransDependency td)
          Add a new dependency to the transformation.
 void addFilenameChangedListener(FilenameChangedListener listener)
           
 void addNameChangedListener(NameChangedListener listener)
           
 void addNote(int p, NotePadMeta ni)
          Add a new note to the transformation on a certain location.
 void addNote(NotePadMeta ni)
          Add a new note to the transformation.
 void addOrReplaceClusterSchema(ClusterSchema clusterSchema)
          Add a new cluster schema to the transformation if that didn't exist yet.
 void addOrReplaceDatabase(org.pentaho.di.core.database.DatabaseMeta databaseMeta)
          Add a database connection to the transformation if that connection didn't exists yet.
 void addOrReplacePartitionSchema(PartitionSchema partitionSchema)
          Add a new partition schema to the transformation if that didn't exist yet.
 void addOrReplaceSlaveServer(SlaveServer slaveServer)
          Add a new slave server to the transformation if that didn't exist yet.
 void addOrReplaceStep(StepMeta stepMeta)
          Add a new step to the transformation if that step didn't exist yet.
 void addParameterDefinition(String key, String defaultValue, String description)
           
 void addStep(int p, StepMeta stepMeta)
          Add a new step to the transformation
 void addStep(StepMeta stepMeta)
          Add a new step to the transformation
 void addTransHop(int p, TransHopMeta hi)
          Add a new hop to the transformation on a certain location.
 void addTransHop(TransHopMeta hi)
          Add a new hop to the transformation.
 void addUndo(Object[] from, Object[] to, int[] pos, org.pentaho.di.core.gui.Point[] prev, org.pentaho.di.core.gui.Point[] curr, int type_of_change, boolean nextAlso)
          Add an undo operation to the undo list
 void analyseImpact(List<DatabaseImpact> impact, org.pentaho.di.core.ProgressMonitorListener monitor)
          This procedure determines the impact of the different steps in a transformation on databases, tables and field.
 void cancelQueries()
          Cancel queries opened for checking & fieldprediction
 void checkRowMixingStatically(StepMeta stepMeta, org.pentaho.di.core.ProgressMonitorListener monitor)
          Check a step to see if there are no multiple steps to read from.
 void checkSteps(List<org.pentaho.di.core.CheckResultInterface> remarks, boolean only_selected, org.pentaho.di.core.ProgressMonitorListener monitor)
          Checks all the steps and fills a List of (CheckResult) remarks.
 void clear()
          Clears the transformation.
 void clearChanged()
          Clears the different changed flags of the transformation.
 void clearParameters()
           
 void clearUndo()
           
 Object clone()
           
 int compare(TransMeta t1, TransMeta t2)
          Compares two transformation on name, filename
 int compareTo(TransMeta o)
           
 void copyParametersFrom(org.pentaho.di.core.parameters.NamedParams params)
           
 void copyVariablesFrom(org.pentaho.di.core.variables.VariableSpace space)
           
 String environmentSubstitute(String aString)
           
 String[] environmentSubstitute(String[] aString)
           
 boolean equals(Object obj)
           
 void eraseParameters()
           
 String exportResources(org.pentaho.di.core.variables.VariableSpace space, Map<String,ResourceDefinition> definitions, ResourceNamingInterface resourceNamingInterface, Repository repository)
          Exports the object to a flat-file system, adding content with filename keys to a set of definitions.
 ClusterSchema findClusterSchema(String name)
          Find a clustering schema using its name
 org.pentaho.di.core.database.DatabaseMeta findDatabase(String name)
          Searches the list of databases for a database with a certain name
 ClusterSchema findFirstUsedClusterSchema()
           
 StepMeta findMappingInputStep(String stepname)
           
 StepMeta findMappingOutputStep(String stepname)
           
 StepMeta findNextStep(StepMeta stepMeta, int nr)
          Deprecated. just get the next steps as an array
 List<StepMeta> findNextSteps(StepMeta stepMeta)
          Retrieve a list of succeeding steps for a certain originating step.
 int findNrInfoSteps(StepMeta stepMeta)
          Find the the number of informational steps for a certains step.
 int findNrNextSteps(StepMeta stepMeta)
          Deprecated. just get the next steps as an array
 int findNrPrevSteps(StepMeta stepMeta)
          Find the number of steps that precede the indicated step.
 int findNrPrevSteps(StepMeta stepMeta, boolean info)
          Deprecated. please use method findPreviousSteps
 int findNrPrevSteps(String stepname)
          Counts the number of previous steps for a step name.
 int findNrPrevSteps(String stepname, boolean info)
          Counts the number of previous steps for a step name taking into account whether or not they are informational.
 PartitionSchema findPartitionSchema(String name)
          Find a partition schema using its name.
 boolean findPrevious(StepMeta startStep, StepMeta stepToFind)
          Look in the transformation and see if we can find a step in a previous location starting somewhere.
 List<StepMeta> findPreviousSteps(StepMeta stepMeta)
          Get the list of previous steps for a certain reference step.
 List<StepMeta> findPreviousSteps(StepMeta stepMeta, boolean info)
          Get the previous steps on a certain location taking into account the steps being informational or not.
 StepMeta findPrevStep(StepMeta stepMeta, int nr)
          Find the previous step on a certain location.
 StepMeta findPrevStep(StepMeta stepMeta, int nr, boolean info)
          Deprecated. please use method findPreviousSteps
 StepMeta findPrevStep(String stepname, int nr)
          Find the previous step on a certain location.
 StepMeta findPrevStep(String stepname, int nr, boolean info)
          Find the previous step on a certain location taking into account the steps being informational or not.
 SlaveServer findSlaveServer(String serverString)
           
 StepMeta findStep(String name)
          Searches the list of steps for a step with a certain name
 StepMeta findStep(String name, StepMeta exclude)
          Searches the list of steps for a step with a certain name while excluding one step.
 TransHopMeta findTransHop(StepMeta from, StepMeta to)
          Search all hops for a hop where a certain step is at the start and another is at the end.
 TransHopMeta findTransHop(StepMeta from, StepMeta to, boolean disabledToo)
          Search all hops for a hop where a certain step is at the start and another is at the end.
 TransHopMeta findTransHop(String name)
          Searches the list of hops for a hop with a certain name
 TransHopMeta findTransHop(TransHopMeta hi)
          Find a certain hop in the transformation..
 TransHopMeta findTransHopFrom(StepMeta fromstep)
          Search all hops for a hop where a certain step is at the start.
 TransHopMeta findTransHopTo(StepMeta tostep)
          Search all hops for a hop where a certain step is at the end.
 String getAlternativeStepname(String stepname)
          Proposes an alternative stepname when the original already exists...
 String[] getArguments()
           
 boolean getBooleanValueOfVariable(String variableName, boolean defaultValue)
           
 String[] getClusterSchemaNames()
           
 List<ClusterSchema> getClusterSchemas()
           
 Hashtable<String,org.pentaho.di.core.Counter> getCounters()
           
 Date getCreatedDate()
           
 String getCreatedUser()
           
 org.pentaho.di.core.database.DatabaseMeta getDatabase(int i)
          Retrieves a database connection information a a certain location.
 List<org.pentaho.di.core.database.DatabaseMeta> getDatabases()
          Get an ArrayList of defined DatabaseInfo objects.
 org.pentaho.di.core.DBCache getDbCache()
           
 String getDefaultExtension()
           
 List<TransDependency> getDependencies()
           
 TransDependency getDependency(int i)
          Retrieves a dependency on a certain location.
 String getDescription()
          Get the description of the transformation
 RepositoryDirectory getDirectory()
           
 RepositoryDirectory getDirectoryTree()
          Deprecated.  
 String getExtendedDescription()
          Get the extended description of the transformation
 int getFeedbackSize()
           
 String getFilename()
          Get the filename (if any) of the transformation
 String getFileType()
           
 String[] getFilterExtensions()
           
 String[] getFilterNames()
           
 long getId()
           
 long getID()
          Get the database ID in the repository for this object.
 StepMeta[] getInfoStep(StepMeta stepMeta)
          Get the informational steps for a certain step.
 StepMeta getInputStep()
           
 org.pentaho.di.core.database.DatabaseMeta getLogConnection()
           
 String getLogSizeLimit()
           
 String getLogTable()
           
 org.pentaho.di.core.database.DatabaseMeta getMaxDateConnection()
           
 double getMaxDateDifference()
           
 String getMaxDateField()
           
 double getMaxDateOffset()
           
 String getMaxDateTable()
           
 org.pentaho.di.core.gui.Point getMaximum()
          Get the maximum size of the canvas by calculating the maximum location of a step
 int getMaxUndo()
          Get the maximum number of undo operations possible
 Date getModifiedDate()
           
 String getModifiedUser()
           
 String getName()
          Get the name of the transformation
 String[] getNextStepNames(StepMeta stepMeta)
          Retrieve an array of succeeding step names for a certain originating step.
 StepMeta[] getNextSteps(StepMeta stepMeta)
          Deprecated. use findNextSteps instead
 NotePadMeta getNote(int i)
          Retrieves notepad information on a certain location.
 NotePadMeta getNote(int x, int y)
          Find the note that is located on a certain point on the canvas.
 int[] getNoteIndexes(NotePadMeta[] notes)
          Get an array of the locations of an array of notes
 StepMeta getOutputStep()
           
 String getParameterDefault(String key)
           
 String getParameterDescription(String key)
           
 String getParameterValue(String key)
           
 org.pentaho.di.core.variables.VariableSpace getParentVariableSpace()
           
 List<PartitionSchema> getPartitionSchemas()
           
 String[] getPartitionSchemasNames()
           
 String getPathAndName()
           
 org.pentaho.di.core.row.RowMetaInterface getPrevInfoFields(StepMeta stepMeta)
          Find the informational fields coming from an informational step into the step specified.
 org.pentaho.di.core.row.RowMetaInterface getPrevInfoFields(String stepname)
          Find the informational fields coming from an informational step into the step specified.
 org.pentaho.di.core.Result getPreviousResult()
           
 org.pentaho.di.core.row.RowMetaInterface getPrevStepFields(StepMeta stepMeta)
          Find the fields that are entering a certain step.
 org.pentaho.di.core.row.RowMetaInterface getPrevStepFields(StepMeta stepMeta, org.pentaho.di.core.ProgressMonitorListener monitor)
          Find the fields that are entering a certain step.
 org.pentaho.di.core.row.RowMetaInterface getPrevStepFields(String stepname)
          Find the fields that are entering a step with a certain name.
 String[] getPrevStepNames(StepMeta stepMeta)
          Retrieve an array of preceding steps for a certain destination step.
 String[] getPrevStepNames(String stepname)
          Retrieve an array of succeeding step names for a certain originating step name.
 StepMeta[] getPrevSteps(StepMeta stepMeta)
          Retrieve an array of preceding steps for a certain destination step.
 StepMeta getReadStep()
           
 StepMeta getRejectedStep()
           
 Repository getRepository()
           
 List<ResourceReference> getResourceDependencies()
           
 List<org.pentaho.di.core.ResultFile> getResultFiles()
           
 List<org.pentaho.di.core.RowMetaAndData> getResultRows()
           
 List<org.pentaho.di.core.gui.GUIPositionInterface> getSelectedDrawnStepsList()
          Get an array of all the selected steps
 NotePadMeta getSelectedNote(int nr)
          Get the selected note at a certain index
 org.pentaho.di.core.gui.Point[] getSelectedNoteLocations()
          Get an array of all the selected step and note locations
 NotePadMeta[] getSelectedNotes()
          Get an array of all the selected notes
 StepMeta getSelectedStep(int nr)
          Get the selected step at a certain location
 org.pentaho.di.core.gui.Point[] getSelectedStepLocations()
          Get an array of all the selected step and note locations
 String[] getSelectedStepNames()
          Get an array of all the selected step names
 StepMeta[] getSelectedSteps()
          Get an array of all the selected steps
 SharedObjects getSharedObjects()
           
 String getSharedObjectsFile()
           
 int getSizeRowset()
           
 String[] getSlaveServerNames()
           
 List<SlaveServer> getSlaveServers()
           
 SlaveStepCopyPartitionDistribution getSlaveStepCopyPartitionDistribution()
           
 int getSleepTimeEmpty()
           
 int getSleepTimeFull()
           
 List<org.pentaho.di.core.SQLStatement> getSQLStatements()
          Builds a list of all the SQL statements that this transformation needs in order to work properly.
 List<org.pentaho.di.core.SQLStatement> getSQLStatements(org.pentaho.di.core.ProgressMonitorListener monitor)
          Builds a list of all the SQL statements that this transformation needs in order to work properly.
 String getSQLStatementsString()
          Get the SQL statements, needed to run this transformation, as one String.
 StepMeta getStep(int i)
          Retrieves a step on a certain location.
 StepMeta getStep(int x, int y, int iconsize)
          Find the step that is located on a certain point on the canvas, taking into account the icon size.
 org.pentaho.di.core.row.RowMetaInterface getStepFields(StepMeta stepMeta)
          Returns the fields that are emitted by a certain step
 org.pentaho.di.core.row.RowMetaInterface getStepFields(StepMeta[] stepMeta)
           
 org.pentaho.di.core.row.RowMetaInterface getStepFields(StepMeta stepMeta, org.pentaho.di.core.ProgressMonitorListener monitor)
          Returns the fields that are emitted by a certain step
 org.pentaho.di.core.row.RowMetaInterface getStepFields(StepMeta stepMeta, StepMeta targetStep, org.pentaho.di.core.ProgressMonitorListener monitor)
          Returns the fields that are emitted by a certain step
 org.pentaho.di.core.row.RowMetaInterface getStepFields(String stepname)
          Returns the fields that are emitted by a certain step name
 int[] getStepIndexes(StepMeta[] steps)
          Get an array of the locations of an array of steps
 String[] getStepNames()
          Get the names of all the steps.
 long getStepPerformanceCapturingDelay()
           
 String getStepPerformanceLogTable()
           
 List<StepMeta> getSteps()
          Get an ArrayList of defined steps.
 StepMeta[] getStepsArray()
          Get all the steps in an array.
 List<StringSearchResult> getStringList(boolean searchSteps, boolean searchDatabases, boolean searchNotes)
           
 List<StringSearchResult> getStringList(boolean searchSteps, boolean searchDatabases, boolean searchNotes, boolean includePasswords)
          Get a list of all the strings used in this transformation.
 org.pentaho.di.core.row.RowMetaInterface getThisStepFields(StepMeta stepMeta, StepMeta nextStep, org.pentaho.di.core.row.RowMetaInterface row)
          Returns the fields that are emitted by a step
 org.pentaho.di.core.row.RowMetaInterface getThisStepFields(StepMeta stepMeta, StepMeta nextStep, org.pentaho.di.core.row.RowMetaInterface row, org.pentaho.di.core.ProgressMonitorListener monitor)
          Returns the fields that are emitted by a step
 org.pentaho.di.core.row.RowMetaInterface getThisStepFields(String stepname, org.pentaho.di.core.row.RowMetaInterface row)
          Return the fields that are emitted by a step with a certain name
 TransHopMeta getTransHop(int i)
          Retrieves a hop on a certain location.
 List<StepMeta> getTransHopSteps(boolean all)
          Gives you an List of all the steps that are at least used in one active hop.
 int getTransstatus()
          Get the status of the transformation
 String getTransversion()
          Get the version of the transformation
 StepMeta getUpdateStep()
           
 Map<String,String> getUsedArguments(String[] arguments)
          Get the arguments used by this transformation.
 StepMeta getUsedStep(int lu)
          Gets a used step on a certain location
 List<String> getUsedVariables()
           
 String getVariable(String variableName)
           
 String getVariable(String variableName, String defaultValue)
           
 StepMeta getWriteStep()
           
 String getXML()
           
 boolean hasChanged()
          Checks whether or not the transformation has changed.
 boolean hasLoop(StepMeta stepMeta)
          See if there are any loops in the transformation, starting at the indicated step.
 boolean haveClusterSchemasChanged()
          Checks whether or not any of the clustering schemas have been changed.
 boolean haveConnectionsChanged()
          Checks whether or not the connections have changed.
 boolean haveHopsChanged()
          Checks whether or not any of the hops have been changed.
 boolean haveNotesChanged()
          Checks whether or not any of the notes have been changed.
 boolean havePartitionSchemasChanged()
          Checks whether or not any of the partitioning schemas have been changed.
 boolean haveStepsChanged()
          Checks whether or not the steps have changed.
 int indexOfDatabase(org.pentaho.di.core.database.DatabaseMeta ci)
          Find the location of database
 int indexOfNote(NotePadMeta ni)
          Find the location of a note
 int indexOfStep(StepMeta stepMeta)
          Find the location of step
 int indexOfTransHop(TransHopMeta hi)
          Find the location of hop
 void initializeVariablesFrom(org.pentaho.di.core.variables.VariableSpace parent)
           
 void injectVariables(Map<String,String> prop)
           
 boolean isBatchIdUsed()
           
 boolean isCapturingStepPerformanceSnapShots()
           
 boolean isDatabaseConnectionUsed(org.pentaho.di.core.database.DatabaseMeta databaseMeta)
          This method asks all steps in the transformation whether or not the specified database connection is used.
 boolean isFeedbackShown()
           
 boolean isFileReference()
           
static boolean isFileReference(String exactFilename, String exactTransname)
           
 boolean isLogfieldUsed()
           
 boolean isRepReference()
           
static boolean isRepReference(String exactFilename, String exactTransname)
           
 boolean isSlaveTransformation()
           
 boolean isStepInformative(StepMeta this_step, StepMeta prev_step)
          Determines whether or not a certain step is informative.
 boolean isStepUsedInTransHops(StepMeta stepMeta)
          Determines if a step has been used in a hop or not.
 boolean isUsingClusterSchema(ClusterSchema clusterSchema)
           
 boolean isUsingPartitionSchema(PartitionSchema partitionSchema)
           
 boolean isUsingSlaveServer(SlaveServer slaveServer)
           
 boolean isUsingThreadPriorityManagment()
           
 boolean isUsingUniqueConnections()
           
 String[] listParameters()
           
 String[] listVariables()
           
 void loadRepTrans(Repository rep)
          Load the transformation name & other details from a repository.
 void loadXML(Node transnode, Repository rep, boolean setInternalVariables)
          Parse a file containing the XML that describes the transformation.
 void loadXML(Node transnode, Repository rep, boolean setInternalVariables, org.pentaho.di.core.variables.VariableSpace parentVariableSpace)
          Parse a file containing the XML that describes the transformation.
 void loadXML(Node transnode, Repository rep, boolean setInternalVariables, org.pentaho.di.core.variables.VariableSpace parentVariableSpace, org.pentaho.di.core.gui.OverwritePrompter prompter)
          Parse a file containing the XML that describes the transformation.
 void lowerNote(int p)
           
 void nameFromFilename()
          Builds a name - if no name is set, yet - from the filename
 TransAction nextUndo()
          Get the next undo transaction on the list.
 int nrDatabases()
          Count the nr of databases in the transformation.
 int nrDependencies()
          Count the nr of dependencies in the transformation.
 int nrNotes()
          Count the nr of notes in the transformation.
 int nrSelectedNotes()
          Count the number of selected notes in this transformation
 int nrSelectedSteps()
          Count the number of selected steps in this transformation
 int nrSteps()
          Count the nr of steps in the transformation.
 int nrTransHops()
          Count the nr of hops in the transformation.
 int nrUsedSteps()
          Counts the number of steps that are actually used in the transformation.
 boolean partOfTransHop(StepMeta stepMeta)
          Determines whether or not a certain step is part of a hop.
 TransAction previousUndo()
          Get the previous undo operation and change the undo pointer
 void raiseNote(int p)
           
 void readClusters(Repository rep, boolean overWriteShared)
          Read the clusters in the repository and add them to this transformation if they are not yet present.
 void readDatabases(Repository rep, boolean overWriteShared)
          Read the database connections in the repository and add them to this transformation if they are not yet present.
 void readPartitionSchemas(Repository rep, boolean overWriteShared)
          Read the partitions in the repository and add them to this transformation if they are not yet present.
 SharedObjects readSharedObjects(Repository rep)
           
 void readSlaves(Repository rep, boolean overWriteShared)
          Read the slave servers in the repository and add them to this transformation if they are not yet present.
 Object realClone(boolean doClear)
           
 void removeAllDependencies()
          Clears all the dependencies from the transformation.
 void removeDatabase(int i)
          Removes a database from the transformation on a certain location.
 void removeDependency(int i)
          Removes a dependency from the transformation on a certain location.
 void removeFilenameChangedListener(FilenameChangedListener listener)
           
 void removeNameChangedListener(NameChangedListener listener)
           
 void removeNote(int i)
          Removes a note from the transformation on a certain location.
 void removeStep(int i)
          Removes a step from the transformation on a certain location.
 void removeTransHop(int i)
          Removes a hop from the transformation on a certain location.
 void saveRep(Repository rep)
           
 void saveRep(Repository rep, org.pentaho.di.core.ProgressMonitorListener monitor)
          Saves the transformation to a repository.
 boolean saveSharedObjects()
           
 void selectAll()
          Mark all steps in the transformation as selected.
 void setArguments(String[] arguments)
           
 void setBatchIdUsed(boolean useBatchId)
           
 void setCapturingStepPerformanceSnapShots(boolean capturingStepPerformanceSnapShots)
           
 void setChanged(boolean ch)
          Sets the changed parameter of the transformation.
 void setClusterSchemas(List<ClusterSchema> clusterSchemas)
           
 void setCounters(Hashtable<String,org.pentaho.di.core.Counter> counters)
           
 void setCreatedDate(Date createdDate)
           
 void setCreatedUser(String createdUser)
           
 void setDatabases(List<org.pentaho.di.core.database.DatabaseMeta> databases)
           
 void setDbCache(org.pentaho.di.core.DBCache dbCache)
           
 void setDependencies(List<TransDependency> dependencies)
           
 void setDescription(String n)
          Set the description of the transformation.
 void setDirectory(RepositoryDirectory directory)
           
 void setDirectoryTree(RepositoryDirectory directoryTree)
          Deprecated.  
 void setExtendedDescription(String n)
          Set the extended description of the transformation.
 void setFeedbackShown(boolean feedbackShown)
           
 void setFeedbackSize(int feedbackSize)
           
 void setFilename(String fname)
          Set the filename of the transformation
 void setId(long id)
           
 void setID(long id)
          Set the database ID for this object in the repository.
 void setInputStep(StepMeta inputStep)
           
 void setInternalKettleVariables()
           
 void setInternalKettleVariables(org.pentaho.di.core.variables.VariableSpace var)
           
 void setLogConnection(org.pentaho.di.core.database.DatabaseMeta logConnection)
           
 void setLogfieldUsed(boolean logfieldUsed)
           
 void setLogSizeLimit(String logSizeLimit)
           
 void setLogTable(String logTable)
           
 void setMaxDateConnection(org.pentaho.di.core.database.DatabaseMeta maxDateConnection)
           
 void setMaxDateDifference(double maxDateDifference)
           
 void setMaxDateField(String maxDateField)
           
 void setMaxDateOffset(double maxDateOffset)
           
 void setMaxDateTable(String maxDateTable)
           
 void setMaxUndo(int mu)
          Sets the maximum number of undo operations that are allowed.
 void setModifiedDate(Date modifiedDate)
           
 void setModifiedUser(String modifiedUser)
           
 void setName(String newName)
          Set the name of the transformation.
 void setOutputStep(StepMeta outputStep)
           
 void setParameterValue(String key, String value)
           
 void setParentVariableSpace(org.pentaho.di.core.variables.VariableSpace parent)
           
 void setPartitionSchemas(List<PartitionSchema> partitionSchemas)
           
 void setPreviousResult(org.pentaho.di.core.Result previousResult)
           
 void setReadStep(StepMeta readStep)
           
 void setRejectedStep(StepMeta rejectedStep)
           
 void setRepository(Repository repository)
           
 void setResultFiles(List<org.pentaho.di.core.ResultFile> resultFiles)
           
 void setResultRows(List<org.pentaho.di.core.RowMetaAndData> resultRows)
           
 void setSharedObjects(SharedObjects sharedObjects)
           
 void setSharedObjectsFile(String sharedObjectsFile)
           
 void setSizeRowset(int sizeRowset)
           
 void setSlaveServers(List<SlaveServer> slaveServers)
           
 void setSlaveStepCopyPartitionDistribution(SlaveStepCopyPartitionDistribution slaveStepCopyPartitionDistribution)
           
 void setSlaveTransformation(boolean slaveTransformation)
           
 void setSleepTimeEmpty(int sleepTimeEmpty)
           
 void setSleepTimeFull(int sleepTimeFull)
           
 void setStep(int i, StepMeta stepMeta)
          Changes the content of a step on a certain position
 void setStepPerformanceCapturingDelay(long stepPerformanceCapturingDelay)
           
 void setStepPerformanceLogTable(String stepPerformanceLogTable)
           
 void setTransHop(int i, TransHopMeta hi)
          Changes the content of a hop on a certain position
 void setTransstatus(int n)
          Set the status of the transformation.
 void setTransversion(String n)
          Set the version of the transformation.
 void setUpdateStep(StepMeta updateStep)
           
 void setUsingThreadPriorityManagment(boolean usingThreadPriorityManagment)
           
 void setUsingUniqueConnections(boolean usingUniqueConnections)
           
 void setVariable(String variableName, String variableValue)
           
 void setWriteStep(StepMeta writeStep)
           
 void shareVariablesWith(org.pentaho.di.core.variables.VariableSpace space)
           
 boolean showReplaceWarning(Repository rep)
          Determine if we should put a replace warning or not for the transformation in a certain repository.
 void sortHops()
           
 void sortHopsNatural()
          Sort the hops in a natural way: from beginning to end
 void sortSteps()
          Put the steps in alfabetical order.
 Map<StepMeta,Map<StepMeta,Boolean>> sortStepsNatural()
          Put the steps in a more natural order: from start to finish.
 String toString()
           
 void unselectAll()
          Clear the selection of all steps.
 TransAction viewNextUndo()
          Get the next undo transaction on the list.
 TransAction viewPreviousUndo()
          View previous undo, don't change undo position
 TransAction viewThisUndo()
          View current undo, don't change undo position
 
Methods inherited from class org.pentaho.di.core.changed.ChangedFlag
addObserver, deleteObserver, notifyObservers, setChanged
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

XML_TAG

public static final String XML_TAG
See Also:
Constant Field Values

TYPE_UNDO_CHANGE

public static final int TYPE_UNDO_CHANGE
See Also:
Constant Field Values

TYPE_UNDO_NEW

public static final int TYPE_UNDO_NEW
See Also:
Constant Field Values

TYPE_UNDO_DELETE

public static final int TYPE_UNDO_DELETE
See Also:
Constant Field Values

TYPE_UNDO_POSITION

public static final int TYPE_UNDO_POSITION
See Also:
Constant Field Values

desc_type_undo

public static final String[] desc_type_undo

XML_TAG_NOTEPADS

public static final String XML_TAG_NOTEPADS
See Also:
Constant Field Values

XML_TAG_PARAMETERS

public static final String XML_TAG_PARAMETERS
See Also:
Constant Field Values

XML_TAG_PARTITIONSCHEMAS

public static final String XML_TAG_PARTITIONSCHEMAS
See Also:
Constant Field Values

XML_TAG_SLAVESERVERS

public static final String XML_TAG_SLAVESERVERS
See Also:
Constant Field Values

XML_TAG_CLUSTERSCHEMAS

public static final String XML_TAG_CLUSTERSCHEMAS
See Also:
Constant Field Values
Constructor Detail

TransMeta

public TransMeta()
Builds a new empty transformation.


TransMeta

public TransMeta(org.pentaho.di.core.variables.VariableSpace parent)
Builds a new empty transformation with a set of variables to inherit from.

Parameters:
parent - the variable space to inherit from

TransMeta

public TransMeta(String filename,
                 String name,
                 String[] arguments)
Constructs a new transformation specifying the filename, name and arguments.

Parameters:
filename - The filename of the transformation
name - The name of the transformation
arguments - The arguments as Strings

TransMeta

public TransMeta(Repository rep,
                 String transname,
                 RepositoryDirectory repdir)
          throws org.pentaho.di.core.exception.KettleException
Read a transformation with a certain name from a repository

Parameters:
rep - The repository to read from.
transname - The name of the transformation.
repdir - the path to the repository directory
Throws:
org.pentaho.di.core.exception.KettleException

TransMeta

public TransMeta(Repository rep,
                 String transname,
                 RepositoryDirectory repdir,
                 boolean setInternalVariables)
          throws org.pentaho.di.core.exception.KettleException
Read a transformation with a certain name from a repository

Parameters:
rep - The repository to read from.
transname - The name of the transformation.
repdir - the path to the repository directory
setInternalVariables - true if you want to set the internal variables based on this transformation information
Throws:
org.pentaho.di.core.exception.KettleException

TransMeta

public TransMeta(Repository rep,
                 String transname,
                 RepositoryDirectory repdir,
                 org.pentaho.di.core.ProgressMonitorListener monitor)
          throws org.pentaho.di.core.exception.KettleException
Read a transformation with a certain name from a repository

Parameters:
rep - The repository to read from.
transname - The name of the transformation.
repdir - the path to the repository directory
monitor - The progress monitor to display the progress of the file-open operation in a dialog
Throws:
org.pentaho.di.core.exception.KettleException

TransMeta

public TransMeta(Repository rep,
                 String transname,
                 RepositoryDirectory repdir,
                 org.pentaho.di.core.ProgressMonitorListener monitor,
                 boolean setInternalVariables)
          throws org.pentaho.di.core.exception.KettleException
Read a transformation with a certain name from a repository

Parameters:
rep - The repository to read from.
transname - The name of the transformation.
repdir - the path to the repository directory
monitor - The progress monitor to display the progress of the file-open operation in a dialog
setInternalVariables - true if you want to set the internal variables based on this transformation information
Throws:
org.pentaho.di.core.exception.KettleException

TransMeta

public TransMeta(String fname)
          throws org.pentaho.di.core.exception.KettleXMLException
Parse a file containing the XML that describes the transformation. No default connections are loaded since no repository is available at this time. Since the filename is set, internal variables are being set that relate to this.

Parameters:
fname - The filename
Throws:
org.pentaho.di.core.exception.KettleXMLException

TransMeta

public TransMeta(String fname,
                 org.pentaho.di.core.variables.VariableSpace parentVariableSpace)
          throws org.pentaho.di.core.exception.KettleXMLException
Parse a file containing the XML that describes the transformation. No default connections are loaded since no repository is available at this time. Since the filename is set, internal variables are being set that relate to this.

Parameters:
fname - The filename
parentVariableSpace -
Throws:
org.pentaho.di.core.exception.KettleXMLException

TransMeta

public TransMeta(String fname,
                 boolean setInternalVariables)
          throws org.pentaho.di.core.exception.KettleXMLException
Parse a file containing the XML that describes the transformation. No default connections are loaded since no repository is available at this time.

Parameters:
fname - The filename
setInternalVariables - true if you want to set the internal variables based on this transformation information
Throws:
org.pentaho.di.core.exception.KettleXMLException

TransMeta

public TransMeta(String fname,
                 Repository rep)
          throws org.pentaho.di.core.exception.KettleXMLException
Parse a file containing the XML that describes the transformation.

Parameters:
fname - The filename
rep - The repository to load the default set of connections from, null if no repository is available
Throws:
org.pentaho.di.core.exception.KettleXMLException

TransMeta

public TransMeta(String fname,
                 Repository rep,
                 boolean setInternalVariables)
          throws org.pentaho.di.core.exception.KettleXMLException
Parse a file containing the XML that describes the transformation.

Parameters:
fname - The filename
rep - The repository to load the default set of connections from, null if no repository is available
setInternalVariables - true if you want to set the internal variables based on this transformation information
Throws:
org.pentaho.di.core.exception.KettleXMLException

TransMeta

public TransMeta(String fname,
                 Repository rep,
                 boolean setInternalVariables,
                 org.pentaho.di.core.variables.VariableSpace parentVariableSpace)
          throws org.pentaho.di.core.exception.KettleXMLException
Parse a file containing the XML that describes the transformation.

Parameters:
fname - The filename
rep - The repository to load the default set of connections from, null if no repository is available
setInternalVariables - true if you want to set the internal variables based on this transformation information
parentVariableSpace - the parent variable space to use during TransMeta construction
Throws:
org.pentaho.di.core.exception.KettleXMLException

TransMeta

public TransMeta(String fname,
                 Repository rep,
                 boolean setInternalVariables,
                 org.pentaho.di.core.variables.VariableSpace parentVariableSpace,
                 org.pentaho.di.core.gui.OverwritePrompter prompter)
          throws org.pentaho.di.core.exception.KettleXMLException
Parse a file containing the XML that describes the transformation.

Parameters:
fname - The filename
rep - The repository to load the default set of connections from, null if no repository is available
setInternalVariables - true if you want to set the internal variables based on this transformation information
parentVariableSpace - the parent variable space to use during TransMeta construction
prompter - the changed/replace listener or null if there is none
Throws:
org.pentaho.di.core.exception.KettleXMLException

TransMeta

public TransMeta(Node transnode,
                 Repository rep)
          throws org.pentaho.di.core.exception.KettleXMLException
Parse a file containing the XML that describes the transformation. Specify a repository to load default list of database connections from and to reference in mappings etc.

Parameters:
transnode - The XML node to load from
rep - the repository to reference.
Throws:
org.pentaho.di.core.exception.KettleXMLException
Method Detail

compare

public int compare(TransMeta t1,
                   TransMeta t2)
Compares two transformation on name, filename

Specified by:
compare in interface Comparator<TransMeta>

compareTo

public int compareTo(TransMeta o)
Specified by:
compareTo in interface Comparable<TransMeta>

equals

public boolean equals(Object obj)
Specified by:
equals in interface Comparator<TransMeta>
Overrides:
equals in class Object

clone

public Object clone()
Overrides:
clone in class Object

realClone

public Object realClone(boolean doClear)

getID

public long getID()
Get the database ID in the repository for this object.

Returns:
the database ID in the repository for this object.

setID

public void setID(long id)
Set the database ID for this object in the repository.

Specified by:
setID in interface EngineMetaInterface
Parameters:
id - the database ID for this object in the repository.

clear

public void clear()
Clears the transformation.


clearUndo

public void clearUndo()

getDatabases

public List<org.pentaho.di.core.database.DatabaseMeta> getDatabases()
Description copied from interface: HasDatabasesInterface
Get an ArrayList of defined DatabaseInfo objects.

Specified by:
getDatabases in interface HasDatabasesInterface
Returns:
an ArrayList of defined DatabaseInfo objects.

setDatabases

public void setDatabases(List<org.pentaho.di.core.database.DatabaseMeta> databases)
Specified by:
setDatabases in interface HasDatabasesInterface
Parameters:
databases - The databases to set.

addDatabase

public void addDatabase(org.pentaho.di.core.database.DatabaseMeta databaseMeta)
Description copied from interface: HasDatabasesInterface
Add a database connection to the transformation.

Specified by:
addDatabase in interface HasDatabasesInterface
Parameters:
databaseMeta - The database connection information.

addOrReplaceDatabase

public void addOrReplaceDatabase(org.pentaho.di.core.database.DatabaseMeta databaseMeta)
Description copied from interface: HasDatabasesInterface
Add a database connection to the transformation if that connection didn't exists yet. Otherwise, replace the connection in the transformation

Specified by:
addOrReplaceDatabase in interface HasDatabasesInterface
Parameters:
databaseMeta - The database connection information.

addStep

public void addStep(StepMeta stepMeta)
Add a new step to the transformation

Parameters:
stepMeta - The step to be added.

addOrReplaceStep

public void addOrReplaceStep(StepMeta stepMeta)
Add a new step to the transformation if that step didn't exist yet. Otherwise, replace the step.

Parameters:
stepMeta - The step to be added.

addTransHop

public void addTransHop(TransHopMeta hi)
Add a new hop to the transformation.

Parameters:
hi - The hop to be added.

addNote

public void addNote(NotePadMeta ni)
Add a new note to the transformation.

Parameters:
ni - The note to be added.

addDependency

public void addDependency(TransDependency td)
Add a new dependency to the transformation.

Parameters:
td - The transformation dependency to be added.

addDatabase

public void addDatabase(int p,
                        org.pentaho.di.core.database.DatabaseMeta ci)
Description copied from interface: HasDatabasesInterface
Add a database connection to the transformation on a certain location.

Specified by:
addDatabase in interface HasDatabasesInterface
Parameters:
p - The location
ci - The database connection information.

addStep

public void addStep(int p,
                    StepMeta stepMeta)
Add a new step to the transformation

Parameters:
p - The location
stepMeta - The step to be added.

addTransHop

public void addTransHop(int p,
                        TransHopMeta hi)
Add a new hop to the transformation on a certain location.

Parameters:
p - the location
hi - The hop to be added.

addNote

public void addNote(int p,
                    NotePadMeta ni)
Add a new note to the transformation on a certain location.

Parameters:
p - The location
ni - The note to be added.

addDependency

public void addDependency(int p,
                          TransDependency td)
Add a new dependency to the transformation on a certain location

Parameters:
p - The location.
td - The transformation dependency to be added.

getDatabase

public org.pentaho.di.core.database.DatabaseMeta getDatabase(int i)
Description copied from interface: HasDatabasesInterface
Retrieves a database connection information a a certain location.

Specified by:
getDatabase in interface HasDatabasesInterface
Parameters:
i - The database number.
Returns:
The database connection information.

getSteps

public List<StepMeta> getSteps()
Get an ArrayList of defined steps.

Returns:
an ArrayList of defined steps.

getStep

public StepMeta getStep(int i)
Retrieves a step on a certain location.

Parameters:
i - The location.
Returns:
The step information.

getTransHop

public TransHopMeta getTransHop(int i)
Retrieves a hop on a certain location.

Parameters:
i - The location.
Returns:
The hop information.

getNote

public NotePadMeta getNote(int i)
Retrieves notepad information on a certain location.

Parameters:
i - The location
Returns:
The notepad information.

getDependency

public TransDependency getDependency(int i)
Retrieves a dependency on a certain location.

Parameters:
i - The location.
Returns:
The dependency.

removeDatabase

public void removeDatabase(int i)
Description copied from interface: HasDatabasesInterface
Removes a database from the transformation on a certain location.

Specified by:
removeDatabase in interface HasDatabasesInterface
Parameters:
i - The location

removeStep

public void removeStep(int i)
Removes a step from the transformation on a certain location.

Parameters:
i - The location

removeTransHop

public void removeTransHop(int i)
Removes a hop from the transformation on a certain location.

Parameters:
i - The location

removeNote

public void removeNote(int i)
Removes a note from the transformation on a certain location.

Parameters:
i - The location

raiseNote

public void raiseNote(int p)

lowerNote

public void lowerNote(int p)

removeDependency

public void removeDependency(int i)
Removes a dependency from the transformation on a certain location.

Parameters:
i - The location

removeAllDependencies

public void removeAllDependencies()
Clears all the dependencies from the transformation.


nrDatabases

public int nrDatabases()
Description copied from interface: HasDatabasesInterface
Count the nr of databases in the transformation.

Specified by:
nrDatabases in interface HasDatabasesInterface
Returns:
The nr of databases

nrSteps

public int nrSteps()
Count the nr of steps in the transformation.

Returns:
The nr of steps

nrTransHops

public int nrTransHops()
Count the nr of hops in the transformation.

Returns:
The nr of hops

nrNotes

public int nrNotes()
Count the nr of notes in the transformation.

Returns:
The nr of notes

nrDependencies

public int nrDependencies()
Count the nr of dependencies in the transformation.

Returns:
The nr of dependencies

setStep

public void setStep(int i,
                    StepMeta stepMeta)
Changes the content of a step on a certain position

Parameters:
i - The position
stepMeta - The Step

setTransHop

public void setTransHop(int i,
                        TransHopMeta hi)
Changes the content of a hop on a certain position

Parameters:
i - The position
hi - The hop

nrUsedSteps

public int nrUsedSteps()
Counts the number of steps that are actually used in the transformation.

Returns:
the number of used steps.

getUsedStep

public StepMeta getUsedStep(int lu)
Gets a used step on a certain location

Parameters:
lu - The location
Returns:
The used step.

findDatabase

public org.pentaho.di.core.database.DatabaseMeta findDatabase(String name)
Description copied from interface: HasDatabasesInterface
Searches the list of databases for a database with a certain name

Specified by:
findDatabase in interface HasDatabasesInterface
Parameters:
name - The name of the database connection
Returns:
The database connection information or null if nothing was found.

findStep

public StepMeta findStep(String name)
Searches the list of steps for a step with a certain name

Parameters:
name - The name of the step to look for
Returns:
The step information or null if no nothing was found.

findStep

public StepMeta findStep(String name,
                         StepMeta exclude)
Searches the list of steps for a step with a certain name while excluding one step.

Parameters:
name - The name of the step to look for
exclude - The step information to exclude.
Returns:
The step information or null if nothing was found.

findTransHop

public TransHopMeta findTransHop(String name)
Searches the list of hops for a hop with a certain name

Parameters:
name - The name of the hop to look for
Returns:
The hop information or null if nothing was found.

findTransHopFrom

public TransHopMeta findTransHopFrom(StepMeta fromstep)
Search all hops for a hop where a certain step is at the start.

Parameters:
fromstep - The step at the start of the hop.
Returns:
The hop or null if no hop was found.

findTransHop

public TransHopMeta findTransHop(TransHopMeta hi)
Find a certain hop in the transformation..

Parameters:
hi - The hop information to look for.
Returns:
The hop or null if no hop was found.

findTransHop

public TransHopMeta findTransHop(StepMeta from,
                                 StepMeta to)
Search all hops for a hop where a certain step is at the start and another is at the end.

Parameters:
from - The step at the start of the hop.
to - The step at the end of the hop.
Returns:
The hop or null if no hop was found.

findTransHop

public TransHopMeta findTransHop(StepMeta from,
                                 StepMeta to,
                                 boolean disabledToo)
Search all hops for a hop where a certain step is at the start and another is at the end.

Parameters:
from - The step at the start of the hop.
to - The step at the end of the hop.
Returns:
The hop or null if no hop was found.

findTransHopTo

public TransHopMeta findTransHopTo(StepMeta tostep)
Search all hops for a hop where a certain step is at the end.

Parameters:
tostep - The step at the end of the hop.
Returns:
The hop or null if no hop was found.

isStepInformative

public boolean isStepInformative(StepMeta this_step,
                                 StepMeta prev_step)
Determines whether or not a certain step is informative. This means that the previous step is sending information to this step, but only informative. This means that this step is using the information to process the actual stream of data. We use this in StreamLookup, TableInput and other types of steps.

Parameters:
this_step - The step that is receiving information.
prev_step - The step that is sending information
Returns:
true if prev_step if informative for this_step.

findNrPrevSteps

public int findNrPrevSteps(String stepname)
Counts the number of previous steps for a step name.

Parameters:
stepname - The name of the step to start from
Returns:
The number of preceding steps.

findNrPrevSteps

public int findNrPrevSteps(String stepname,
                           boolean info)
Counts the number of previous steps for a step name taking into account whether or not they are informational.

Parameters:
stepname - The name of the step to start from
Returns:
The number of preceding steps.

findNrPrevSteps

public int findNrPrevSteps(StepMeta stepMeta)
Find the number of steps that precede the indicated step.

Parameters:
stepMeta - The source step
Returns:
The number of preceding steps found.

findPrevStep

public StepMeta findPrevStep(String stepname,
                             int nr)
Find the previous step on a certain location.

Parameters:
stepname - The source step name
nr - the location
Returns:
The preceding step found.

findPrevStep

public StepMeta findPrevStep(String stepname,
                             int nr,
                             boolean info)
Find the previous step on a certain location taking into account the steps being informational or not.

Parameters:
stepname - The name of the step
nr - The location
info - true if we only want the informational steps.
Returns:
The step information

findPrevStep

public StepMeta findPrevStep(StepMeta stepMeta,
                             int nr)
Find the previous step on a certain location.

Parameters:
stepMeta - The source step information
nr - the location
Returns:
The preceding step found.

findNrPrevSteps

public int findNrPrevSteps(StepMeta stepMeta,
                           boolean info)
Deprecated. please use method findPreviousSteps

Count the number of previous steps on a certain location taking into account the steps being informational or not.

Parameters:
stepMeta - The name of the step
info - true if we only want the informational steps.
Returns:
The number of preceding steps

findPrevStep

public StepMeta findPrevStep(StepMeta stepMeta,
                             int nr,
                             boolean info)
Deprecated. please use method findPreviousSteps

Find the previous step on a certain location taking into account the steps being informational or not.

Parameters:
stepMeta - The step
nr - The location
info - true if we only want the informational steps.
Returns:
The preceding step information

findPreviousSteps

public List<StepMeta> findPreviousSteps(StepMeta stepMeta)
Get the list of previous steps for a certain reference step. This includes the info steps.

Parameters:
stepMeta - The reference step
Returns:
The list of the preceding steps, including the info steps.

findPreviousSteps

public List<StepMeta> findPreviousSteps(StepMeta stepMeta,
                                        boolean info)
Get the previous steps on a certain location taking into account the steps being informational or not.

Parameters:
stepMeta - The name of the step
info - true if we only want the informational steps.
Returns:
The list of the preceding steps

getInfoStep

public StepMeta[] getInfoStep(StepMeta stepMeta)
Get the informational steps for a certain step. An informational step is a step that provides information for lookups etc.

Parameters:
stepMeta - The name of the step
Returns:
The informational steps found

findNrInfoSteps

public int findNrInfoSteps(StepMeta stepMeta)
Find the the number of informational steps for a certains step.

Parameters:
stepMeta - The step
Returns:
The number of informational steps found.

getPrevInfoFields

public org.pentaho.di.core.row.RowMetaInterface getPrevInfoFields(String stepname)
                                                           throws org.pentaho.di.core.exception.KettleStepException
Find the informational fields coming from an informational step into the step specified.

Parameters:
stepname - The name of the step
Returns:
A row containing fields with origin.
Throws:
org.pentaho.di.core.exception.KettleStepException

getPrevInfoFields

public org.pentaho.di.core.row.RowMetaInterface getPrevInfoFields(StepMeta stepMeta)
                                                           throws org.pentaho.di.core.exception.KettleStepException
Find the informational fields coming from an informational step into the step specified.

Parameters:
stepMeta - The receiving step
Returns:
A row containing fields with origin.
Throws:
org.pentaho.di.core.exception.KettleStepException

findNrNextSteps

public int findNrNextSteps(StepMeta stepMeta)
Deprecated. just get the next steps as an array

Find the number of succeeding steps for a certain originating step.

Parameters:
stepMeta - The originating step
Returns:
The number of succeeding steps.

findNextStep

public StepMeta findNextStep(StepMeta stepMeta,
                             int nr)
Deprecated. just get the next steps as an array

Find the succeeding step at a location for an originating step.

Parameters:
stepMeta - The originating step
nr - The location
Returns:
The step found.

getPrevSteps

public StepMeta[] getPrevSteps(StepMeta stepMeta)
Retrieve an array of preceding steps for a certain destination step. This includes the info steps.

Parameters:
stepMeta - The destination step
Returns:
An array containing the preceding steps.

getPrevStepNames

public String[] getPrevStepNames(String stepname)
Retrieve an array of succeeding step names for a certain originating step name.

Parameters:
stepname - The originating step name
Returns:
An array of succeeding step names

getPrevStepNames

public String[] getPrevStepNames(StepMeta stepMeta)
Retrieve an array of preceding steps for a certain destination step.

Parameters:
stepMeta - The destination step
Returns:
an array of preceding step names.

getNextSteps

public StepMeta[] getNextSteps(StepMeta stepMeta)
Deprecated. use findNextSteps instead

Retrieve an array of succeeding steps for a certain originating step.

Parameters:
stepMeta - The originating step
Returns:
an array of succeeding steps.

findNextSteps

public List<StepMeta> findNextSteps(StepMeta stepMeta)
Retrieve a list of succeeding steps for a certain originating step.

Parameters:
stepMeta - The originating step
Returns:
an array of succeeding steps.

getNextStepNames

public String[] getNextStepNames(StepMeta stepMeta)
Retrieve an array of succeeding step names for a certain originating step.

Parameters:
stepMeta - The originating step
Returns:
an array of succeeding step names.

getStep

public StepMeta getStep(int x,
                        int y,
                        int iconsize)
Find the step that is located on a certain point on the canvas, taking into account the icon size.

Parameters:
x - the x-coordinate of the point queried
y - the y-coordinate of the point queried
Returns:
The step information if a step is located at the point. Otherwise, if no step was found: null.

getNote

public NotePadMeta getNote(int x,
                           int y)
Find the note that is located on a certain point on the canvas.

Parameters:
x - the x-coordinate of the point queried
y - the y-coordinate of the point queried
Returns:
The note information if a note is located at the point. Otherwise, if nothing was found: null.

partOfTransHop

public boolean partOfTransHop(StepMeta stepMeta)
Determines whether or not a certain step is part of a hop.

Parameters:
stepMeta - The step queried
Returns:
true if the step is part of a hop.

getStepFields

public org.pentaho.di.core.row.RowMetaInterface getStepFields(String stepname)
                                                       throws org.pentaho.di.core.exception.KettleStepException
Returns the fields that are emitted by a certain step name

Parameters:
stepname - The stepname of the step to be queried.
Returns:
A row containing the fields emitted.
Throws:
org.pentaho.di.core.exception.KettleStepException

getStepFields

public org.pentaho.di.core.row.RowMetaInterface getStepFields(StepMeta stepMeta)
                                                       throws org.pentaho.di.core.exception.KettleStepException
Returns the fields that are emitted by a certain step

Parameters:
stepMeta - The step to be queried.
Returns:
A row containing the fields emitted.
Throws:
org.pentaho.di.core.exception.KettleStepException

getStepFields

public org.pentaho.di.core.row.RowMetaInterface getStepFields(StepMeta[] stepMeta)
                                                       throws org.pentaho.di.core.exception.KettleStepException
Throws:
org.pentaho.di.core.exception.KettleStepException

getStepFields

public org.pentaho.di.core.row.RowMetaInterface getStepFields(StepMeta stepMeta,
                                                              org.pentaho.di.core.ProgressMonitorListener monitor)
                                                       throws org.pentaho.di.core.exception.KettleStepException
Returns the fields that are emitted by a certain step

Parameters:
stepMeta - The step to be queried.
monitor - The progress monitor for progress dialog. (null if not used!)
Returns:
A row containing the fields emitted.
Throws:
org.pentaho.di.core.exception.KettleStepException

getStepFields

public org.pentaho.di.core.row.RowMetaInterface getStepFields(StepMeta stepMeta,
                                                              StepMeta targetStep,
                                                              org.pentaho.di.core.ProgressMonitorListener monitor)
                                                       throws org.pentaho.di.core.exception.KettleStepException
Returns the fields that are emitted by a certain step

Parameters:
stepMeta - The step to be queried.
targetStep - the target step
monitor - The progress monitor for progress dialog. (null if not used!)
Returns:
A row containing the fields emitted.
Throws:
org.pentaho.di.core.exception.KettleStepException

getPrevStepFields

public org.pentaho.di.core.row.RowMetaInterface getPrevStepFields(String stepname)
                                                           throws org.pentaho.di.core.exception.KettleStepException
Find the fields that are entering a step with a certain name.

Parameters:
stepname - The name of the step queried
Returns:
A row containing the fields (w/ origin) entering the step
Throws:
org.pentaho.di.core.exception.KettleStepException

getPrevStepFields

public org.pentaho.di.core.row.RowMetaInterface getPrevStepFields(StepMeta stepMeta)
                                                           throws org.pentaho.di.core.exception.KettleStepException
Find the fields that are entering a certain step.

Parameters:
stepMeta - The step queried
Returns:
A row containing the fields (w/ origin) entering the step
Throws:
org.pentaho.di.core.exception.KettleStepException

getPrevStepFields

public org.pentaho.di.core.row.RowMetaInterface getPrevStepFields(StepMeta stepMeta,
                                                                  org.pentaho.di.core.ProgressMonitorListener monitor)
                                                           throws org.pentaho.di.core.exception.KettleStepException
Find the fields that are entering a certain step.

Parameters:
stepMeta - The step queried
monitor - The progress monitor for progress dialog. (null if not used!)
Returns:
A row containing the fields (w/ origin) entering the step
Throws:
org.pentaho.di.core.exception.KettleStepException

getThisStepFields

public org.pentaho.di.core.row.RowMetaInterface getThisStepFields(String stepname,
                                                                  org.pentaho.di.core.row.RowMetaInterface row)
                                                           throws org.pentaho.di.core.exception.KettleStepException
Return the fields that are emitted by a step with a certain name

Parameters:
stepname - The name of the step that's being queried.
row - A row containing the input fields or an empty row if no input is required.
Returns:
A Row containing the output fields.
Throws:
org.pentaho.di.core.exception.KettleStepException

getThisStepFields

public org.pentaho.di.core.row.RowMetaInterface getThisStepFields(StepMeta stepMeta,
                                                                  StepMeta nextStep,
                                                                  org.pentaho.di.core.row.RowMetaInterface row)
                                                           throws org.pentaho.di.core.exception.KettleStepException
Returns the fields that are emitted by a step

Parameters:
stepMeta - : The StepMeta object that's being queried
nextStep - : if non-null this is the next step that's call back to ask what's being sent
row - : A row containing the input fields or an empty row if no input is required.
Returns:
A Row containing the output fields.
Throws:
org.pentaho.di.core.exception.KettleStepException

getThisStepFields

public org.pentaho.di.core.row.RowMetaInterface getThisStepFields(StepMeta stepMeta,
                                                                  StepMeta nextStep,
                                                                  org.pentaho.di.core.row.RowMetaInterface row,
                                                                  org.pentaho.di.core.ProgressMonitorListener monitor)
                                                           throws org.pentaho.di.core.exception.KettleStepException
Returns the fields that are emitted by a step

Parameters:
stepMeta - : The StepMeta object that's being queried
nextStep - : if non-null this is the next step that's call back to ask what's being sent
row - : A row containing the input fields or an empty row if no input is required.
Returns:
A Row containing the output fields.
Throws:
org.pentaho.di.core.exception.KettleStepException

showReplaceWarning

public boolean showReplaceWarning(Repository rep)
Determine if we should put a replace warning or not for the transformation in a certain repository.

Specified by:
showReplaceWarning in interface EngineMetaInterface
Parameters:
rep - The repository.
Returns:
True if we should show a replace warning, false if not.

saveRep

public void saveRep(Repository rep)
             throws org.pentaho.di.core.exception.KettleException
Throws:
org.pentaho.di.core.exception.KettleException

saveRep

public void saveRep(Repository rep,
                    org.pentaho.di.core.ProgressMonitorListener monitor)
             throws org.pentaho.di.core.exception.KettleException
Saves the transformation to a repository.

Specified by:
saveRep in interface EngineMetaInterface
Parameters:
rep - The repository.
Throws:
org.pentaho.di.core.exception.KettleException - if an error occurrs.

isUsingPartitionSchema

public boolean isUsingPartitionSchema(PartitionSchema partitionSchema)

isUsingClusterSchema

public boolean isUsingClusterSchema(ClusterSchema clusterSchema)

isUsingSlaveServer

public boolean isUsingSlaveServer(SlaveServer slaveServer)
                           throws org.pentaho.di.core.exception.KettleException
Throws:
org.pentaho.di.core.exception.KettleException

readDatabases

public void readDatabases(Repository rep,
                          boolean overWriteShared)
                   throws org.pentaho.di.core.exception.KettleException
Description copied from interface: HasDatabasesInterface
Read the database connections in the repository and add them to this transformation if they are not yet present.

Specified by:
readDatabases in interface HasDatabasesInterface
Parameters:
rep - The repository to load the database connections from.
overWriteShared - if an object with the same name exists, overwrite
Throws:
org.pentaho.di.core.exception.KettleException

readPartitionSchemas

public void readPartitionSchemas(Repository rep,
                                 boolean overWriteShared)
                          throws org.pentaho.di.core.exception.KettleException
Read the partitions in the repository and add them to this transformation if they are not yet present.

Parameters:
rep - The repository to load from.
overWriteShared - if an object with the same name exists, overwrite
Throws:
org.pentaho.di.core.exception.KettleException

readSlaves

public void readSlaves(Repository rep,
                       boolean overWriteShared)
                throws org.pentaho.di.core.exception.KettleException
Read the slave servers in the repository and add them to this transformation if they are not yet present.

Parameters:
rep - The repository to load from.
overWriteShared - if an object with the same name exists, overwrite
Throws:
org.pentaho.di.core.exception.KettleException

readClusters

public void readClusters(Repository rep,
                         boolean overWriteShared)
                  throws org.pentaho.di.core.exception.KettleException
Read the clusters in the repository and add them to this transformation if they are not yet present.

Parameters:
rep - The repository to load from.
overWriteShared - if an object with the same name exists, overwrite
Throws:
org.pentaho.di.core.exception.KettleException

loadRepTrans

public void loadRepTrans(Repository rep)
                  throws org.pentaho.di.core.exception.KettleException
Load the transformation name & other details from a repository.

Parameters:
rep - The repository to load the details from.
Throws:
org.pentaho.di.core.exception.KettleException

isRepReference

public boolean isRepReference()

isFileReference

public boolean isFileReference()

isRepReference

public static boolean isRepReference(String exactFilename,
                                     String exactTransname)

isFileReference

public static boolean isFileReference(String exactFilename,
                                      String exactTransname)

indexOfTransHop

public int indexOfTransHop(TransHopMeta hi)
Find the location of hop

Parameters:
hi - The hop queried
Returns:
The location of the hop, -1 if nothing was found.

indexOfStep

public int indexOfStep(StepMeta stepMeta)
Find the location of step

Parameters:
stepMeta - The step queried
Returns:
The location of the step, -1 if nothing was found.

indexOfDatabase

public int indexOfDatabase(org.pentaho.di.core.database.DatabaseMeta ci)
Description copied from interface: HasDatabasesInterface
Find the location of database

Specified by:
indexOfDatabase in interface HasDatabasesInterface
Parameters:
ci - The database queried
Returns:
The location of the database, -1 if nothing was found.

indexOfNote

public int indexOfNote(NotePadMeta ni)
Find the location of a note

Parameters:
ni - The note queried
Returns:
The location of the note, -1 if nothing was found.

getFileType

public String getFileType()
Specified by:
getFileType in interface EngineMetaInterface

getFilterNames

public String[] getFilterNames()
Specified by:
getFilterNames in interface EngineMetaInterface

getFilterExtensions

public String[] getFilterExtensions()
Specified by:
getFilterExtensions in interface EngineMetaInterface

getDefaultExtension

public String getDefaultExtension()
Specified by:
getDefaultExtension in interface EngineMetaInterface

getXML

public String getXML()
              throws org.pentaho.di.core.exception.KettleException
Specified by:
getXML in interface EngineMetaInterface
Specified by:
getXML in interface org.pentaho.di.core.xml.XMLInterface
Throws:
org.pentaho.di.core.exception.KettleException

loadXML

public void loadXML(Node transnode,
                    Repository rep,
                    boolean setInternalVariables)
             throws org.pentaho.di.core.exception.KettleXMLException
Parse a file containing the XML that describes the transformation.

Parameters:
transnode - The XML node to load from
rep - The repository to load the default list of database connections from (null if no repository is available)
setInternalVariables - true if you want to set the internal variables based on this transformation information
Throws:
org.pentaho.di.core.exception.KettleXMLException

loadXML

public void loadXML(Node transnode,
                    Repository rep,
                    boolean setInternalVariables,
                    org.pentaho.di.core.variables.VariableSpace parentVariableSpace)
             throws org.pentaho.di.core.exception.KettleXMLException
Parse a file containing the XML that describes the transformation.

Parameters:
transnode - The XML node to load from
rep - The repository to load the default list of database connections from (null if no repository is available)
setInternalVariables - true if you want to set the internal variables based on this transformation information
parentVariableSpace - the parent variable space to use during TransMeta construction
Throws:
org.pentaho.di.core.exception.KettleXMLException

loadXML

public void loadXML(Node transnode,
                    Repository rep,
                    boolean setInternalVariables,
                    org.pentaho.di.core.variables.VariableSpace parentVariableSpace,
                    org.pentaho.di.core.gui.OverwritePrompter prompter)
             throws org.pentaho.di.core.exception.KettleXMLException
Parse a file containing the XML that describes the transformation.

Parameters:
transnode - The XML node to load from
rep - The repository to load the default list of database connections from (null if no repository is available)
setInternalVariables - true if you want to set the internal variables based on this transformation information
parentVariableSpace - the parent variable space to use during TransMeta construction
prompter - the changed/replace listener or null if there is none
Throws:
org.pentaho.di.core.exception.KettleXMLException

readSharedObjects

public SharedObjects readSharedObjects(Repository rep)
                                throws org.pentaho.di.core.exception.KettleException
Throws:
org.pentaho.di.core.exception.KettleException

getTransHopSteps

public List<StepMeta> getTransHopSteps(boolean all)
Gives you an List of all the steps that are at least used in one active hop. These steps will be used to execute the transformation. The others will not be executed. Update 3.0 : we also add those steps that are not linked to another hop, but have at least one remote input or output step defined.

Parameters:
all - Set to true if you want to get ALL the steps from the transformation.
Returns:
A ArrayList of steps

getName

public String getName()
Get the name of the transformation

Specified by:
getName in interface EngineMetaInterface
Returns:
The name of the transformation

setName

public void setName(String newName)
Set the name of the transformation.

Parameters:
newName - The new name of the transformation

nameFromFilename

public void nameFromFilename()
Builds a name - if no name is set, yet - from the filename

Specified by:
nameFromFilename in interface EngineMetaInterface

getFilename

public String getFilename()
Get the filename (if any) of the transformation

Specified by:
getFilename in interface EngineMetaInterface
Returns:
The filename of the transformation.

setFilename

public void setFilename(String fname)
Set the filename of the transformation

Specified by:
setFilename in interface EngineMetaInterface
Parameters:
fname - The new filename of the transformation.

isStepUsedInTransHops

public boolean isStepUsedInTransHops(StepMeta stepMeta)
Determines if a step has been used in a hop or not.

Parameters:
stepMeta - The step queried.
Returns:
True if a step is used in a hop (active or not), false if this is not the case.

setChanged

public void setChanged(boolean ch)
Sets the changed parameter of the transformation.

Specified by:
setChanged in interface ChangedFlagInterface
Overrides:
setChanged in class ChangedFlag
Parameters:
ch - True if you want to mark the transformation as changed, false if not.

clearChanged

public void clearChanged()
Clears the different changed flags of the transformation.

Specified by:
clearChanged in interface EngineMetaInterface
Overrides:
clearChanged in class ChangedFlag

haveConnectionsChanged

public boolean haveConnectionsChanged()
Description copied from interface: HasDatabasesInterface
Checks whether or not the connections have changed.

Specified by:
haveConnectionsChanged in interface HasDatabasesInterface
Returns:
True if the connections have been changed.

haveStepsChanged

public boolean haveStepsChanged()
Checks whether or not the steps have changed.

Returns:
True if the connections have been changed.

haveHopsChanged

public boolean haveHopsChanged()
Checks whether or not any of the hops have been changed.

Returns:
True if a hop has been changed.

haveNotesChanged

public boolean haveNotesChanged()
Checks whether or not any of the notes have been changed.

Returns:
True if the notes have been changed.

havePartitionSchemasChanged

public boolean havePartitionSchemasChanged()
Checks whether or not any of the partitioning schemas have been changed.

Returns:
True if the partitioning schemas have been changed.

haveClusterSchemasChanged

public boolean haveClusterSchemasChanged()
Checks whether or not any of the clustering schemas have been changed.

Returns:
True if the clustering schemas have been changed.

hasChanged

public boolean hasChanged()
Checks whether or not the transformation has changed.

Specified by:
hasChanged in interface ChangedFlagInterface
Overrides:
hasChanged in class ChangedFlag
Returns:
True if the transformation has changed.

hasLoop

public boolean hasLoop(StepMeta stepMeta)
See if there are any loops in the transformation, starting at the indicated step. This works by looking at all the previous steps. If you keep going backward and find the step, there is a loop. Both the informational and the normal steps need to be checked for loops!

Parameters:
stepMeta - The step position to start looking
Returns:
True if a loop has been found, false if no loop is found.

selectAll

public void selectAll()
Mark all steps in the transformation as selected.


unselectAll

public void unselectAll()
Clear the selection of all steps.


nrSelectedSteps

public int nrSelectedSteps()
Count the number of selected steps in this transformation

Returns:
The number of selected steps.

getSelectedStep

public StepMeta getSelectedStep(int nr)
Get the selected step at a certain location

Parameters:
nr - The location
Returns:
The selected step

nrSelectedNotes

public int nrSelectedNotes()
Count the number of selected notes in this transformation

Returns:
The number of selected notes.

getSelectedNote

public NotePadMeta getSelectedNote(int nr)
Get the selected note at a certain index

Parameters:
nr - The index
Returns:
The selected note

getSelectedStepLocations

public org.pentaho.di.core.gui.Point[] getSelectedStepLocations()
Get an array of all the selected step and note locations

Returns:
The selected step and notes locations.

getSelectedNoteLocations

public org.pentaho.di.core.gui.Point[] getSelectedNoteLocations()
Get an array of all the selected step and note locations

Returns:
The selected step and notes locations.

getSelectedSteps

public StepMeta[] getSelectedSteps()
Get an array of all the selected steps

Returns:
An array of all the selected steps.

getSelectedDrawnStepsList

public List<org.pentaho.di.core.gui.GUIPositionInterface> getSelectedDrawnStepsList()
Get an array of all the selected steps

Returns:
A list containing all the selected & drawn steps.

getSelectedNotes

public NotePadMeta[] getSelectedNotes()
Get an array of all the selected notes

Returns:
An array of all the selected notes.

getSelectedStepNames

public String[] getSelectedStepNames()
Get an array of all the selected step names

Returns:
An array of all the selected step names.

getStepIndexes

public int[] getStepIndexes(StepMeta[] steps)
Get an array of the locations of an array of steps

Parameters:
steps - An array of steps
Returns:
an array of the locations of an array of steps

getNoteIndexes

public int[] getNoteIndexes(NotePadMeta[] notes)
Get an array of the locations of an array of notes

Parameters:
notes - An array of notes
Returns:
an array of the locations of an array of notes

getMaxUndo

public int getMaxUndo()
Get the maximum number of undo operations possible

Specified by:
getMaxUndo in interface UndoInterface
Returns:
The maximum number of undo operations that are allowed.

setMaxUndo

public void setMaxUndo(int mu)
Sets the maximum number of undo operations that are allowed.

Specified by:
setMaxUndo in interface UndoInterface
Parameters:
mu - The maximum number of undo operations that are allowed.

addUndo

public void addUndo(Object[] from,
                    Object[] to,
                    int[] pos,
                    org.pentaho.di.core.gui.Point[] prev,
                    org.pentaho.di.core.gui.Point[] curr,
                    int type_of_change,
                    boolean nextAlso)
Add an undo operation to the undo list

Specified by:
addUndo in interface UndoInterface
Parameters:
from - array of objects representing the old state
to - array of objectes representing the new state
pos - An array of object locations
prev - An array of points representing the old positions
curr - An array of points representing the new positions
type_of_change - The type of change that's being done to the transformation.
nextAlso - indicates that the next undo operation needs to follow this one.

previousUndo

public TransAction previousUndo()
Get the previous undo operation and change the undo pointer

Specified by:
previousUndo in interface UndoInterface
Returns:
The undo transaction to be performed.

viewThisUndo

public TransAction viewThisUndo()
View current undo, don't change undo position

Specified by:
viewThisUndo in interface UndoInterface
Returns:
The current undo transaction

viewPreviousUndo

public TransAction viewPreviousUndo()
View previous undo, don't change undo position

Specified by:
viewPreviousUndo in interface UndoInterface
Returns:
The previous undo transaction

nextUndo

public TransAction nextUndo()
Get the next undo transaction on the list. Change the undo pointer.

Specified by:
nextUndo in interface UndoInterface
Returns:
The next undo transaction (for redo)

viewNextUndo

public TransAction viewNextUndo()
Get the next undo transaction on the list.

Specified by:
viewNextUndo in interface UndoInterface
Returns:
The next undo transaction (for redo)

getMaximum

public org.pentaho.di.core.gui.Point getMaximum()
Get the maximum size of the canvas by calculating the maximum location of a step

Returns:
Maximum coordinate of a step in the transformation + (100,100) for safety.

getStepNames

public String[] getStepNames()
Get the names of all the steps.

Returns:
An array of step names.

getStepsArray

public StepMeta[] getStepsArray()
Get all the steps in an array.

Returns:
An array of all the steps in the transformation.

findPrevious

public boolean findPrevious(StepMeta startStep,
                            StepMeta stepToFind)
Look in the transformation and see if we can find a step in a previous location starting somewhere.

Parameters:
startStep - The starting step
stepToFind - The step to look for backward in the transformation
Returns:
true if we can find the step in an earlier location in the transformation.

sortSteps

public void sortSteps()
Put the steps in alfabetical order.


sortHops

public void sortHops()

sortStepsNatural

public Map<StepMeta,Map<StepMeta,Boolean>> sortStepsNatural()
Put the steps in a more natural order: from start to finish. For the moment, we ignore splits and joins. Splits and joins can't be listed sequentially in any case!

Returns:
a map containing all the previous steps per step

sortHopsNatural

public void sortHopsNatural()
Sort the hops in a natural way: from beginning to end


analyseImpact

public void analyseImpact(List<DatabaseImpact> impact,
                          org.pentaho.di.core.ProgressMonitorListener monitor)
                   throws org.pentaho.di.core.exception.KettleStepException
This procedure determines the impact of the different steps in a transformation on databases, tables and field.

Parameters:
impact - An ArrayList of DatabaseImpact objects.
Throws:
org.pentaho.di.core.exception.KettleStepException

getAlternativeStepname

public String getAlternativeStepname(String stepname)
Proposes an alternative stepname when the original already exists...

Parameters:
stepname - The stepname to find an alternative for..
Returns:
The alternative stepname.

getSQLStatements

public List<org.pentaho.di.core.SQLStatement> getSQLStatements()
                                                        throws org.pentaho.di.core.exception.KettleStepException
Builds a list of all the SQL statements that this transformation needs in order to work properly.

Returns:
An ArrayList of SQLStatement objects.
Throws:
org.pentaho.di.core.exception.KettleStepException

getSQLStatements

public List<org.pentaho.di.core.SQLStatement> getSQLStatements(org.pentaho.di.core.ProgressMonitorListener monitor)
                                                        throws org.pentaho.di.core.exception.KettleStepException
Builds a list of all the SQL statements that this transformation needs in order to work properly.

Returns:
An ArrayList of SQLStatement objects.
Throws:
org.pentaho.di.core.exception.KettleStepException

getSQLStatementsString

public String getSQLStatementsString()
                              throws org.pentaho.di.core.exception.KettleStepException
Get the SQL statements, needed to run this transformation, as one String.

Returns:
the SQL statements needed to run this transformation.
Throws:
org.pentaho.di.core.exception.KettleStepException

checkSteps

public void checkSteps(List<org.pentaho.di.core.CheckResultInterface> remarks,
                       boolean only_selected,
                       org.pentaho.di.core.ProgressMonitorListener monitor)
Checks all the steps and fills a List of (CheckResult) remarks.

Parameters:
remarks - The remarks list to add to.
only_selected - Check only the selected steps.
monitor - The progress monitor to use, null if not used

getResultRows

public List<org.pentaho.di.core.RowMetaAndData> getResultRows()
Returns:
Returns the resultRows.

setResultRows

public void setResultRows(List<org.pentaho.di.core.RowMetaAndData> resultRows)
Parameters:
resultRows - The resultRows to set.

getDirectory

public RepositoryDirectory getDirectory()
Specified by:
getDirectory in interface EngineMetaInterface
Returns:
Returns the directory.

setDirectory

public void setDirectory(RepositoryDirectory directory)
Parameters:
directory - The directory to set.

getDirectoryTree

public RepositoryDirectory getDirectoryTree()
Deprecated. 

Returns:
Returns the directoryTree.

setDirectoryTree

public void setDirectoryTree(RepositoryDirectory directoryTree)
Deprecated. 

Parameters:
directoryTree - The directoryTree to set.

getPathAndName

public String getPathAndName()
Returns:
The directory path plus the name of the transformation

getArguments

public String[] getArguments()
Returns:
Returns the arguments.

setArguments

public void setArguments(String[] arguments)
Parameters:
arguments - The arguments to set.

getCounters

public Hashtable<String,org.pentaho.di.core.Counter> getCounters()
Returns:
Returns the counters.

setCounters

public void setCounters(Hashtable<String,org.pentaho.di.core.Counter> counters)
Parameters:
counters - The counters to set.

getDependencies

public List<TransDependency> getDependencies()
Returns:
Returns the dependencies.

setDependencies

public void setDependencies(List<TransDependency> dependencies)
Parameters:
dependencies - The dependencies to set.

getId

public long getId()
Returns:
Returns the id.

setId

public void setId(long id)
Parameters:
id - The id to set.

getInputStep

public StepMeta getInputStep()
Returns:
Returns the inputStep.

setInputStep

public void setInputStep(StepMeta inputStep)
Parameters:
inputStep - The inputStep to set.

getLogConnection

public org.pentaho.di.core.database.DatabaseMeta getLogConnection()
Returns:
Returns the logConnection.

setLogConnection

public void setLogConnection(org.pentaho.di.core.database.DatabaseMeta logConnection)
Parameters:
logConnection - The logConnection to set.

getLogTable

public String getLogTable()
Returns:
Returns the logTable.

setLogTable

public void setLogTable(String logTable)
Parameters:
logTable - The logTable to set.

getMaxDateConnection

public org.pentaho.di.core.database.DatabaseMeta getMaxDateConnection()
Returns:
Returns the maxDateConnection.

setMaxDateConnection

public void setMaxDateConnection(org.pentaho.di.core.database.DatabaseMeta maxDateConnection)
Parameters:
maxDateConnection - The maxDateConnection to set.

getMaxDateDifference

public double getMaxDateDifference()
Returns:
Returns the maxDateDifference.

setMaxDateDifference

public void setMaxDateDifference(double maxDateDifference)
Parameters:
maxDateDifference - The maxDateDifference to set.

getMaxDateField

public String getMaxDateField()
Returns:
Returns the maxDateField.

setMaxDateField

public void setMaxDateField(String maxDateField)
Parameters:
maxDateField - The maxDateField to set.

getMaxDateOffset

public double getMaxDateOffset()
Returns:
Returns the maxDateOffset.

setMaxDateOffset

public void setMaxDateOffset(double maxDateOffset)
Parameters:
maxDateOffset - The maxDateOffset to set.

getMaxDateTable

public String getMaxDateTable()
Returns:
Returns the maxDateTable.

setMaxDateTable

public void setMaxDateTable(String maxDateTable)
Parameters:
maxDateTable - The maxDateTable to set.

getOutputStep

public StepMeta getOutputStep()
Returns:
Returns the outputStep.

setOutputStep

public void setOutputStep(StepMeta outputStep)
Parameters:
outputStep - The outputStep to set.

getReadStep

public StepMeta getReadStep()
Returns:
Returns the readStep.

setReadStep

public void setReadStep(StepMeta readStep)
Parameters:
readStep - The readStep to set.

getUpdateStep

public StepMeta getUpdateStep()
Returns:
Returns the updateStep.

setUpdateStep

public void setUpdateStep(StepMeta updateStep)
Parameters:
updateStep - The updateStep to set.

getWriteStep

public StepMeta getWriteStep()
Returns:
Returns the writeStep.

setWriteStep

public void setWriteStep(StepMeta writeStep)
Parameters:
writeStep - The writeStep to set.

getSizeRowset

public int getSizeRowset()
Returns:
Returns the sizeRowset.

setSizeRowset

public void setSizeRowset(int sizeRowset)
Parameters:
sizeRowset - The sizeRowset to set.

getDbCache

public org.pentaho.di.core.DBCache getDbCache()
Returns:
Returns the dbCache.

setDbCache

public void setDbCache(org.pentaho.di.core.DBCache dbCache)
Parameters:
dbCache - The dbCache to set.

isBatchIdUsed

public boolean isBatchIdUsed()
Returns:
Returns the useBatchId.

setBatchIdUsed

public void setBatchIdUsed(boolean useBatchId)
Parameters:
useBatchId - The useBatchId to set.

isLogfieldUsed

public boolean isLogfieldUsed()
Returns:
Returns the logfieldUsed.

setLogfieldUsed

public void setLogfieldUsed(boolean logfieldUsed)
Parameters:
logfieldUsed - The logfieldUsed to set.

getCreatedDate

public Date getCreatedDate()
Specified by:
getCreatedDate in interface EngineMetaInterface
Returns:
Returns the createdDate.

setCreatedDate

public void setCreatedDate(Date createdDate)
Specified by:
setCreatedDate in interface EngineMetaInterface
Parameters:
createdDate - The createdDate to set.

setCreatedUser

public void setCreatedUser(String createdUser)
Specified by:
setCreatedUser in interface EngineMetaInterface
Parameters:
createdUser - The createdUser to set.

getCreatedUser

public String getCreatedUser()
Specified by:
getCreatedUser in interface EngineMetaInterface
Returns:
Returns the createdUser.

setModifiedDate

public void setModifiedDate(Date modifiedDate)
Specified by:
setModifiedDate in interface EngineMetaInterface
Parameters:
modifiedDate - The modifiedDate to set.

getModifiedDate

public Date getModifiedDate()
Specified by:
getModifiedDate in interface EngineMetaInterface
Returns:
Returns the modifiedDate.

setModifiedUser

public void setModifiedUser(String modifiedUser)
Specified by:
setModifiedUser in interface EngineMetaInterface
Parameters:
modifiedUser - The modifiedUser to set.

getModifiedUser

public String getModifiedUser()
Specified by:
getModifiedUser in interface EngineMetaInterface
Returns:
Returns the modifiedUser.

getDescription

public String getDescription()
Get the description of the transformation

Returns:
The description of the transformation

setDescription

public void setDescription(String n)
Set the description of the transformation.

Parameters:
n - The new description of the transformation

setExtendedDescription

public void setExtendedDescription(String n)
Set the extended description of the transformation.

Parameters:
n - The new extended description of the transformation

getExtendedDescription

public String getExtendedDescription()
Get the extended description of the transformation

Returns:
The extended description of the transformation

getTransversion

public String getTransversion()
Get the version of the transformation

Returns:
The version of the transformation

setTransversion

public void setTransversion(String n)
Set the version of the transformation.

Parameters:
n - The new version description of the transformation

setTransstatus

public void setTransstatus(int n)
Set the status of the transformation.

Parameters:
n - The new status description of the transformation

getTransstatus

public int getTransstatus()
Get the status of the transformation

Returns:
The status of the transformation

toString

public String toString()
Overrides:
toString in class Object
Returns:
the textual representation of the transformation: it's name. If the name has not been set, the classname is returned.

cancelQueries

public void cancelQueries()
                   throws org.pentaho.di.core.exception.KettleDatabaseException
Cancel queries opened for checking & fieldprediction

Throws:
org.pentaho.di.core.exception.KettleDatabaseException

getUsedArguments

public Map<String,String> getUsedArguments(String[] arguments)
Get the arguments used by this transformation.

Parameters:
arguments -
Returns:
A row with the used arguments in it.

getSleepTimeEmpty

public int getSleepTimeEmpty()
Returns:
Sleep time waiting when buffer is empty, in nano-seconds

getSleepTimeFull

public int getSleepTimeFull()
Returns:
Sleep time waiting when buffer is full, in nano-seconds

setSleepTimeEmpty

public void setSleepTimeEmpty(int sleepTimeEmpty)
Parameters:
sleepTimeEmpty - The sleepTimeEmpty to set.

setSleepTimeFull

public void setSleepTimeFull(int sleepTimeFull)
Parameters:
sleepTimeFull - The sleepTimeFull to set.

isDatabaseConnectionUsed

public boolean isDatabaseConnectionUsed(org.pentaho.di.core.database.DatabaseMeta databaseMeta)
This method asks all steps in the transformation whether or not the specified database connection is used. The connection is used in the transformation if any of the steps uses it or if it is being used to log to.

Parameters:
databaseMeta - The connection to check
Returns:
true if the connection is used in this transformation.

getStringList

public List<StringSearchResult> getStringList(boolean searchSteps,
                                              boolean searchDatabases,
                                              boolean searchNotes,
                                              boolean includePasswords)
Get a list of all the strings used in this transformation.

Returns:
A list of StringSearchResult with strings used in the

getStringList

public List<StringSearchResult> getStringList(boolean searchSteps,
                                              boolean searchDatabases,
                                              boolean searchNotes)

getUsedVariables

public List<String> getUsedVariables()

getPreviousResult

public org.pentaho.di.core.Result getPreviousResult()
Returns:
Returns the previousResult.

setPreviousResult

public void setPreviousResult(org.pentaho.di.core.Result previousResult)
Parameters:
previousResult - The previousResult to set.

getResultFiles

public List<org.pentaho.di.core.ResultFile> getResultFiles()
Returns:
Returns the resultFiles.

setResultFiles

public void setResultFiles(List<org.pentaho.di.core.ResultFile> resultFiles)
Parameters:
resultFiles - The resultFiles to set.

getPartitionSchemas

public List<PartitionSchema> getPartitionSchemas()
Returns:
the partitionSchemas

setPartitionSchemas

public void setPartitionSchemas(List<PartitionSchema> partitionSchemas)
Parameters:
partitionSchemas - the partitionSchemas to set

getPartitionSchemasNames

public String[] getPartitionSchemasNames()
Returns:
the available partition schema names.

isFeedbackShown

public boolean isFeedbackShown()
Returns:
the feedbackShown

setFeedbackShown

public void setFeedbackShown(boolean feedbackShown)
Parameters:
feedbackShown - the feedbackShown to set

getFeedbackSize

public int getFeedbackSize()
Returns:
the feedbackSize

setFeedbackSize

public void setFeedbackSize(int feedbackSize)
Parameters:
feedbackSize - the feedbackSize to set

isUsingUniqueConnections

public boolean isUsingUniqueConnections()
Returns:
the usingUniqueConnections

setUsingUniqueConnections

public void setUsingUniqueConnections(boolean usingUniqueConnections)
Parameters:
usingUniqueConnections - the usingUniqueConnections to set

getClusterSchemas

public List<ClusterSchema> getClusterSchemas()

setClusterSchemas

public void setClusterSchemas(List<ClusterSchema> clusterSchemas)

getClusterSchemaNames

public String[] getClusterSchemaNames()
Returns:
The slave server strings from this cluster schema

findPartitionSchema

public PartitionSchema findPartitionSchema(String name)
Find a partition schema using its name.

Parameters:
name - The name of the partition schema to look for.
Returns:
the partition with the specified name of null if nothing was found

findClusterSchema

public ClusterSchema findClusterSchema(String name)
Find a clustering schema using its name

Parameters:
name - The name of the clustering schema to look for.
Returns:
the cluster schema with the specified name of null if nothing was found

addOrReplacePartitionSchema

public void addOrReplacePartitionSchema(PartitionSchema partitionSchema)
Add a new partition schema to the transformation if that didn't exist yet. Otherwise, replace it.

Parameters:
partitionSchema - The partition schema to be added.

addOrReplaceSlaveServer

public void addOrReplaceSlaveServer(SlaveServer slaveServer)
Add a new slave server to the transformation if that didn't exist yet. Otherwise, replace it.

Parameters:
slaveServer - The slave server to be added.

addOrReplaceClusterSchema

public void addOrReplaceClusterSchema(ClusterSchema clusterSchema)
Add a new cluster schema to the transformation if that didn't exist yet. Otherwise, replace it.

Parameters:
clusterSchema - The cluster schema to be added.

getSharedObjectsFile

public String getSharedObjectsFile()

setSharedObjectsFile

public void setSharedObjectsFile(String sharedObjectsFile)

saveSharedObjects

public boolean saveSharedObjects()
Specified by:
saveSharedObjects in interface EngineMetaInterface

isUsingThreadPriorityManagment

public boolean isUsingThreadPriorityManagment()
Returns:
the usingThreadPriorityManagment

setUsingThreadPriorityManagment

public void setUsingThreadPriorityManagment(boolean usingThreadPriorityManagment)
Parameters:
usingThreadPriorityManagment - the usingThreadPriorityManagment to set

findSlaveServer

public SlaveServer findSlaveServer(String serverString)

getSlaveServerNames

public String[] getSlaveServerNames()

getSlaveServers

public List<SlaveServer> getSlaveServers()
Specified by:
getSlaveServers in interface HasSlaveServersInterface
Returns:
the slaveServers

setSlaveServers

public void setSlaveServers(List<SlaveServer> slaveServers)
Parameters:
slaveServers - the slaveServers to set

getRejectedStep

public StepMeta getRejectedStep()
Returns:
the rejectedStep

setRejectedStep

public void setRejectedStep(StepMeta rejectedStep)
Parameters:
rejectedStep - the rejectedStep to set

checkRowMixingStatically

public void checkRowMixingStatically(StepMeta stepMeta,
                                     org.pentaho.di.core.ProgressMonitorListener monitor)
                              throws org.pentaho.di.core.exception.KettleRowException
Check a step to see if there are no multiple steps to read from. If so, check to see if the receiving rows are all the same in layout. We only want to ONLY use the DBCache for this to prevent GUI stalls.

Parameters:
stepMeta - the step to check
Throws:
org.pentaho.di.core.exception.KettleRowException - in case we detect a row mixing violation

setInternalKettleVariables

public void setInternalKettleVariables()
Specified by:
setInternalKettleVariables in interface EngineMetaInterface

setInternalKettleVariables

public void setInternalKettleVariables(org.pentaho.di.core.variables.VariableSpace var)

copyVariablesFrom

public void copyVariablesFrom(org.pentaho.di.core.variables.VariableSpace space)
Specified by:
copyVariablesFrom in interface org.pentaho.di.core.variables.VariableSpace

environmentSubstitute

public String environmentSubstitute(String aString)
Specified by:
environmentSubstitute in interface org.pentaho.di.core.variables.VariableSpace

environmentSubstitute

public String[] environmentSubstitute(String[] aString)
Specified by:
environmentSubstitute in interface org.pentaho.di.core.variables.VariableSpace

getParentVariableSpace

public org.pentaho.di.core.variables.VariableSpace getParentVariableSpace()
Specified by:
getParentVariableSpace in interface org.pentaho.di.core.variables.VariableSpace

setParentVariableSpace

public void setParentVariableSpace(org.pentaho.di.core.variables.VariableSpace parent)
Specified by:
setParentVariableSpace in interface org.pentaho.di.core.variables.VariableSpace

getVariable

public String getVariable(String variableName,
                          String defaultValue)
Specified by:
getVariable in interface org.pentaho.di.core.variables.VariableSpace

getVariable

public String getVariable(String variableName)
Specified by:
getVariable in interface org.pentaho.di.core.variables.VariableSpace

getBooleanValueOfVariable

public boolean getBooleanValueOfVariable(String variableName,
                                         boolean defaultValue)
Specified by:
getBooleanValueOfVariable in interface org.pentaho.di.core.variables.VariableSpace

initializeVariablesFrom

public void initializeVariablesFrom(org.pentaho.di.core.variables.VariableSpace parent)
Specified by:
initializeVariablesFrom in interface org.pentaho.di.core.variables.VariableSpace

listVariables

public String[] listVariables()
Specified by:
listVariables in interface org.pentaho.di.core.variables.VariableSpace

setVariable

public void setVariable(String variableName,
                        String variableValue)
Specified by:
setVariable in interface org.pentaho.di.core.variables.VariableSpace

shareVariablesWith

public void shareVariablesWith(org.pentaho.di.core.variables.VariableSpace space)
Specified by:
shareVariablesWith in interface org.pentaho.di.core.variables.VariableSpace

injectVariables

public void injectVariables(Map<String,String> prop)
Specified by:
injectVariables in interface org.pentaho.di.core.variables.VariableSpace

findMappingInputStep

public StepMeta findMappingInputStep(String stepname)
                              throws org.pentaho.di.core.exception.KettleStepException
Throws:
org.pentaho.di.core.exception.KettleStepException

findMappingOutputStep

public StepMeta findMappingOutputStep(String stepname)
                               throws org.pentaho.di.core.exception.KettleStepException
Throws:
org.pentaho.di.core.exception.KettleStepException

getResourceDependencies

public List<ResourceReference> getResourceDependencies()

exportResources

public String exportResources(org.pentaho.di.core.variables.VariableSpace space,
                              Map<String,ResourceDefinition> definitions,
                              ResourceNamingInterface resourceNamingInterface,
                              Repository repository)
                       throws org.pentaho.di.core.exception.KettleException
Description copied from interface: ResourceExportInterface
Exports the object to a flat-file system, adding content with filename keys to a set of definitions. The supplied resource naming interface allows the object to name appropriately without worrying about those parts of the implementation specific details.

Specified by:
exportResources in interface ResourceExportInterface
Parameters:
space - The variable space to resolve (environment) variables with.
definitions - The map containing the filenames and content
resourceNamingInterface - The resource naming interface allows the object to name appropriately
repository - the repository object to load from
Returns:
The filename for this object. (also contained in the definitions map)
Throws:
org.pentaho.di.core.exception.KettleException - in case something goes wrong during the export

getSlaveStepCopyPartitionDistribution

public SlaveStepCopyPartitionDistribution getSlaveStepCopyPartitionDistribution()
Returns:
the slaveStepCopyPartitionDistribution

setSlaveStepCopyPartitionDistribution

public void setSlaveStepCopyPartitionDistribution(SlaveStepCopyPartitionDistribution slaveStepCopyPartitionDistribution)
Parameters:
slaveStepCopyPartitionDistribution - the slaveStepCopyPartitionDistribution to set

findFirstUsedClusterSchema

public ClusterSchema findFirstUsedClusterSchema()

isSlaveTransformation

public boolean isSlaveTransformation()

setSlaveTransformation

public void setSlaveTransformation(boolean slaveTransformation)

getRepository

public Repository getRepository()
Returns:
the repository

setRepository

public void setRepository(Repository repository)
Parameters:
repository - the repository to set

isCapturingStepPerformanceSnapShots

public boolean isCapturingStepPerformanceSnapShots()
Returns:
the capturingStepPerformanceSnapShots

setCapturingStepPerformanceSnapShots

public void setCapturingStepPerformanceSnapShots(boolean capturingStepPerformanceSnapShots)
Parameters:
capturingStepPerformanceSnapShots - the capturingStepPerformanceSnapShots to set

getStepPerformanceCapturingDelay

public long getStepPerformanceCapturingDelay()
Returns:
the stepPerformanceCapturingDelay

setStepPerformanceCapturingDelay

public void setStepPerformanceCapturingDelay(long stepPerformanceCapturingDelay)
Parameters:
stepPerformanceCapturingDelay - the stepPerformanceCapturingDelay to set

getSharedObjects

public SharedObjects getSharedObjects()
Returns:
the sharedObjects

setSharedObjects

public void setSharedObjects(SharedObjects sharedObjects)
Parameters:
sharedObjects - the sharedObjects to set

getStepPerformanceLogTable

public String getStepPerformanceLogTable()
Returns:
the stepPerformanceLogTable

setStepPerformanceLogTable

public void setStepPerformanceLogTable(String stepPerformanceLogTable)
Parameters:
stepPerformanceLogTable - the stepPerformanceLogTable to set

addNameChangedListener

public void addNameChangedListener(NameChangedListener listener)

removeNameChangedListener

public void removeNameChangedListener(NameChangedListener listener)

addFilenameChangedListener

public void addFilenameChangedListener(FilenameChangedListener listener)

removeFilenameChangedListener

public void removeFilenameChangedListener(FilenameChangedListener listener)

activateParameters

public void activateParameters()
Specified by:
activateParameters in interface org.pentaho.di.core.parameters.NamedParams

addParameterDefinition

public void addParameterDefinition(String key,
                                   String defaultValue,
                                   String description)
                            throws org.pentaho.di.core.parameters.DuplicateParamException
Specified by:
addParameterDefinition in interface org.pentaho.di.core.parameters.NamedParams
Throws:
org.pentaho.di.core.parameters.DuplicateParamException

getParameterDescription

public String getParameterDescription(String key)
                               throws org.pentaho.di.core.parameters.UnknownParamException
Specified by:
getParameterDescription in interface org.pentaho.di.core.parameters.NamedParams
Throws:
org.pentaho.di.core.parameters.UnknownParamException

getParameterDefault

public String getParameterDefault(String key)
                           throws org.pentaho.di.core.parameters.UnknownParamException
Specified by:
getParameterDefault in interface org.pentaho.di.core.parameters.NamedParams
Throws:
org.pentaho.di.core.parameters.UnknownParamException

getParameterValue

public String getParameterValue(String key)
                         throws org.pentaho.di.core.parameters.UnknownParamException
Specified by:
getParameterValue in interface org.pentaho.di.core.parameters.NamedParams
Throws:
org.pentaho.di.core.parameters.UnknownParamException

listParameters

public String[] listParameters()
Specified by:
listParameters in interface org.pentaho.di.core.parameters.NamedParams

setParameterValue

public void setParameterValue(String key,
                              String value)
                       throws org.pentaho.di.core.parameters.UnknownParamException
Specified by:
setParameterValue in interface org.pentaho.di.core.parameters.NamedParams
Throws:
org.pentaho.di.core.parameters.UnknownParamException

eraseParameters

public void eraseParameters()
Specified by:
eraseParameters in interface org.pentaho.di.core.parameters.NamedParams

clearParameters

public void clearParameters()
Specified by:
clearParameters in interface org.pentaho.di.core.parameters.NamedParams

copyParametersFrom

public void copyParametersFrom(org.pentaho.di.core.parameters.NamedParams params)
Specified by:
copyParametersFrom in interface org.pentaho.di.core.parameters.NamedParams

getLogSizeLimit

public String getLogSizeLimit()
Returns:
the logSizeLimit

setLogSizeLimit

public void setLogSizeLimit(String logSizeLimit)
Parameters:
logSizeLimit - the logSizeLimit to set