Class JobMeta

All Implemented Interfaces:
Cloneable, Comparable<JobMeta>, org.pentaho.di.core.AttributesInterface, org.pentaho.di.core.bowl.HasBowlInterface, ChangedFlagInterface, EngineMetaInterface, UndoInterface, org.pentaho.di.core.logging.LoggingObjectInterface, org.pentaho.di.core.logging.LoggingObjectLifecycleInterface, org.pentaho.di.core.parameters.NamedParams, org.pentaho.di.core.variables.VariableSpace, org.pentaho.di.core.xml.XMLInterface, HasRepositoryInterface, org.pentaho.di.repository.RepositoryElementInterface, org.pentaho.di.repository.RepositoryObjectInterface, ResourceExportInterface, HasDatabasesInterface, HasSlaveServersInterface

public class JobMeta extends AbstractMeta implements Cloneable, Comparable<JobMeta>, org.pentaho.di.core.xml.XMLInterface, ResourceExportInterface, org.pentaho.di.repository.RepositoryElementInterface, org.pentaho.di.core.logging.LoggingObjectInterface
The definition of a PDI job is represented by a JobMeta object. It is typically loaded from a .kjb file, a PDI repository, or it is generated dynamically. The declared parameters of the job definition are then queried using listParameters() and assigned values using calls to setParameterValue(..). JobMeta provides methods to load, save, verify, etc.
Since:
11-08-2003
Author:
Matt
  • Field Details

    • XML_TAG

      public static final String XML_TAG
      See Also:
    • XML_TAG_SLAVESERVERS

      protected static final String XML_TAG_SLAVESERVERS
      See Also:
    • REPOSITORY_ELEMENT_TYPE

      public static final org.pentaho.di.repository.RepositoryObjectType REPOSITORY_ELEMENT_TYPE
      A constant specifying the repository element type as a Job.
    • jobVersion

      protected String jobVersion
    • jobStatus

      protected int jobStatus
    • jobcopies

      protected List<JobEntryCopy> jobcopies
    • jobhops

      protected List<JobHopMeta> jobhops
    • arguments

      protected String[] arguments
    • changedEntries

      protected boolean changedEntries
    • changedHops

      protected boolean changedHops
    • jobLogTable

      protected JobLogTable jobLogTable
    • jobEntryLogTable

      protected JobEntryLogTable jobEntryLogTable
    • extraLogTables

      protected List<LogTableInterface> extraLogTables
    • startCopyName

      protected String startCopyName
    • expandingRemoteJob

      protected boolean expandingRemoteJob
    • gatheringMetrics

      protected boolean gatheringMetrics
    • log

      protected org.pentaho.di.core.logging.LogChannelInterface log
      The log channel interface.
    • STRING_SPECIAL

      public static final String STRING_SPECIAL
      Constant = "SPECIAL"
      See Also:
    • STRING_SPECIAL_START

      public static final String STRING_SPECIAL_START
      Constant = "START"
      See Also:
    • STRING_SPECIAL_DUMMY

      public static final String STRING_SPECIAL_DUMMY
      Constant = "DUMMY"
      See Also:
    • STRING_SPECIAL_OK

      public static final String STRING_SPECIAL_OK
      Constant = "OK"
      See Also:
    • STRING_SPECIAL_ERROR

      public static final String STRING_SPECIAL_ERROR
      Constant = "ERROR"
      See Also:
    • loopCache

      protected Map<String,Boolean> loopCache
      The loop cache.
    • max

      public boolean[] max
      List of booleans indicating whether or not to remember the size and position of the different windows...
    • batchIdPassed

      protected boolean batchIdPassed
    • XML_TAG_PARAMETERS

      protected static final String XML_TAG_PARAMETERS
      See Also:
  • Constructor Details

    • JobMeta

      public JobMeta()
      Instantiates a new job meta.
    • JobMeta

      public JobMeta(String fname, Repository rep) throws org.pentaho.di.core.exception.KettleXMLException
      Instantiates a new job meta.
      Parameters:
      fname - the fname
      rep - the rep
      Throws:
      org.pentaho.di.core.exception.KettleXMLException - the kettle xml exception
    • JobMeta

      public JobMeta(String fname, Repository rep, org.pentaho.di.core.gui.OverwritePrompter prompter) throws org.pentaho.di.core.exception.KettleXMLException
      Instantiates a new job meta.
      Parameters:
      fname - the fname
      rep - the rep
      prompter - the prompter
      Throws:
      org.pentaho.di.core.exception.KettleXMLException - the kettle xml exception
    • JobMeta

      @Deprecated public JobMeta(org.pentaho.di.core.variables.VariableSpace parentSpace, String fname, Repository rep, org.pentaho.di.core.gui.OverwritePrompter prompter) throws org.pentaho.di.core.exception.KettleXMLException
      Deprecated.
      Load the job from the XML file specified.
      Parameters:
      fname - The filename to load as a job
      rep - The repository to bind againt, null if there is no repository available.
      Throws:
      org.pentaho.di.core.exception.KettleXMLException
    • JobMeta

      public JobMeta(org.pentaho.di.core.variables.VariableSpace parentSpace, String fname, Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.core.gui.OverwritePrompter prompter) throws org.pentaho.di.core.exception.KettleXMLException
      Load the job from the XML file specified.
      Parameters:
      fname - The filename to load as a job
      rep - The repository to bind againt, null if there is no repository available.
      Throws:
      org.pentaho.di.core.exception.KettleXMLException
    • JobMeta

      public JobMeta(InputStream inputStream, Repository rep, org.pentaho.di.core.gui.OverwritePrompter prompter) throws org.pentaho.di.core.exception.KettleXMLException
      Instantiates a new job meta.
      Parameters:
      inputStream - the input stream
      rep - the rep
      prompter - the prompter
      Throws:
      org.pentaho.di.core.exception.KettleXMLException - the kettle xml exception
    • JobMeta

      public JobMeta(Node jobnode, Repository rep, org.pentaho.di.core.gui.OverwritePrompter prompter) throws org.pentaho.di.core.exception.KettleXMLException
      Create a new JobMeta object by loading it from a a DOM node.
      Parameters:
      jobnode - The node to load from
      rep - The reference to a repository to load additional information from
      prompter - The prompter to use in case a shared object gets overwritten
      Throws:
      org.pentaho.di.core.exception.KettleXMLException
    • JobMeta

      public JobMeta(Node jobnode, Repository rep, boolean ignoreRepositorySharedObjects, org.pentaho.di.core.gui.OverwritePrompter prompter) throws org.pentaho.di.core.exception.KettleXMLException
      Create a new JobMeta object by loading it from a a DOM node.
      Parameters:
      jobnode - The node to load from
      rep - The reference to a repository to load additional information from
      ignoreRepositorySharedObjects - Do not load shared objects, handled separately
      prompter - The prompter to use in case a shared object gets overwritten
      Throws:
      org.pentaho.di.core.exception.KettleXMLException
  • Method Details

    • clear

      public void clear()
      Clears or reinitializes many of the JobMeta properties.
      Overrides:
      clear in class AbstractMeta
    • addDefaults

      public void addDefaults()
      Adds the defaults.
    • createStartEntry

      public static final JobEntryCopy createStartEntry()
      Creates the start entry.
      Returns:
      the job entry copy
    • createDummyEntry

      public static final JobEntryCopy createDummyEntry()
      Creates the dummy entry.
      Returns:
      the job entry copy
    • getStart

      public JobEntryCopy getStart()
      Gets the start.
      Returns:
      the start
    • getDummy

      public JobEntryCopy getDummy()
      Gets the dummy.
      Returns:
      the dummy
    • compare

      public int compare(JobMeta j1, JobMeta j2)
      Compares two job on name, filename, repository directory, etc. The comparison algorithm is as follows:
      1. The first job's filename is checked first; if it has none, the job comes from a repository. If the second job does not come from a repository, -1 is returned.
      2. If the jobs are both from a repository, the jobs' names are compared. If the first job has no name and the second one does, a -1 is returned. If the opposite is true, a 1 is returned.
      3. If they both have names they are compared as strings. If the result is non-zero it is returned. Otherwise the repository directories are compared using the same technique of checking empty values and then performing a string comparison, returning any non-zero result.
      4. If the names and directories are equal, the object revision strings are compared using the same technique of checking empty values and then performing a string comparison, this time ultimately returning the result of the string compare.
      5. If the first job does not come from a repository and the second one does, a 1 is returned. Otherwise the job names and filenames are subsequently compared using the same technique of checking empty values and then performing a string comparison, ultimately returning the result of the filename string comparison.
      Parameters:
      j1 - the first job to compare
      j2 - the second job to compare
      Returns:
      0 if the two jobs are equal, 1 or -1 depending on the values (see description above)
    • compareTo

      public int compareTo(JobMeta o)
      Compares this job's meta-data to the specified job's meta-data. This method simply calls compare(this, o)
      Specified by:
      compareTo in interface Comparable<JobMeta>
      Parameters:
      o - the o
      Returns:
      the int
      See Also:
    • equals

      public boolean equals(Object obj)
      Checks whether this job's meta-data object is equal to the specified object. If the specified object is not an instance of JobMeta, false is returned. Otherwise the method returns whether a call to compare() indicates equality (i.e. compare(this, (JobMeta)obj)==0).
      Overrides:
      equals in class Object
      Parameters:
      obj - the obj
      Returns:
      true, if successful
      See Also:
    • clone

      public Object clone()
      Clones the job meta-data object.
      Overrides:
      clone in class Object
      Returns:
      a clone of the job meta-data object
      See Also:
    • realClone

      public Object realClone(boolean doClear)
      Perform a real clone of the job meta-data object, including cloning all lists and copying all values. If the doClear parameter is true, the clone will be cleared of ALL values before the copy. If false, only the copied fields will be cleared.
      Parameters:
      doClear - Whether to clear all of the clone's data before copying from the source object
      Returns:
      a real clone of the calling object
    • getJobLogTable

      public JobLogTable getJobLogTable()
      Gets the job log table.
      Returns:
      the job log table
    • setJobLogTable

      public void setJobLogTable(JobLogTable jobLogTable)
      Sets the job log table.
      Parameters:
      jobLogTable - the new job log table
    • clearChanged

      public void clearChanged()
      Clears the different changed flags of the job.
      Specified by:
      clearChanged in interface ChangedFlagInterface
      Specified by:
      clearChanged in interface EngineMetaInterface
      Overrides:
      clearChanged in class AbstractMeta
    • hasChanged

      public boolean hasChanged()
      Specified by:
      hasChanged in interface ChangedFlagInterface
      Overrides:
      hasChanged in class AbstractMeta
    • 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.
    • getFileType

      public String getFileType()
      Description copied from interface: EngineMetaInterface
      Gets the file type.
      Specified by:
      getFileType in interface EngineMetaInterface
      Returns:
      the file type
    • getFilterNames

      public String[] getFilterNames()
      Gets the job filter names.
      Specified by:
      getFilterNames in interface EngineMetaInterface
      Returns:
      the filter names
      See Also:
    • getFilterExtensions

      public String[] getFilterExtensions()
      Gets the job filter extensions. For JobMeta, this method returns the value of Const.STRING_JOB_FILTER_EXT
      Specified by:
      getFilterExtensions in interface EngineMetaInterface
      Returns:
      the filter extensions
      See Also:
    • getDefaultExtension

      public String getDefaultExtension()
      Gets the default extension for a job. For JobMeta, this method returns the value of Const.STRING_JOB_DEFAULT_EXT
      Specified by:
      getDefaultExtension in interface EngineMetaInterface
      Returns:
      the default extension
      See Also:
    • getXML

      public String getXML()
      Description copied from interface: EngineMetaInterface
      Gets the XML representation.
      Specified by:
      getXML in interface EngineMetaInterface
      Specified by:
      getXML in interface org.pentaho.di.core.xml.XMLInterface
      Returns:
      the XML representation of this transformation
      See Also:
      • XMLInterface.getXML()
    • areOnlyUsedConnectionsSavedToXMLInServer

      public boolean areOnlyUsedConnectionsSavedToXMLInServer()
    • isRepReference

      public boolean isRepReference()
      Checks if is rep reference.
      Returns:
      true, if is rep reference
    • isFileReference

      public boolean isFileReference()
      Checks if is file reference.
      Returns:
      true, if is file reference
    • isRepReference

      public static boolean isRepReference(String fileName, String transName)
      Checks if is rep reference.
      Parameters:
      fileName - the file name
      transName - the trans name
      Returns:
      true, if is rep reference
    • isFileReference

      public static boolean isFileReference(String fileName, String transName)
      Checks if is file reference.
      Parameters:
      fileName - the file name
      transName - the trans name
      Returns:
      true, if is file reference
    • loadXML

      public void loadXML(Node jobnode, Repository rep, org.pentaho.di.core.gui.OverwritePrompter prompter) throws org.pentaho.di.core.exception.KettleXMLException
      Load xml.
      Parameters:
      jobnode - the jobnode
      rep - the rep
      prompter - the prompter
      Throws:
      org.pentaho.di.core.exception.KettleXMLException - the kettle xml exception
    • loadXML

      public void loadXML(Node jobnode, String fname, Repository rep, org.pentaho.di.core.gui.OverwritePrompter prompter) throws org.pentaho.di.core.exception.KettleXMLException
      Load xml.
      Parameters:
      jobnode - the jobnode
      fname - The filename
      rep - the rep
      prompter - the prompter
      Throws:
      org.pentaho.di.core.exception.KettleXMLException - the kettle xml exception
    • loadXML

      public void loadXML(Node jobnode, Repository rep, boolean ignoreRepositorySharedObjects, org.pentaho.di.core.gui.OverwritePrompter prompter) throws org.pentaho.di.core.exception.KettleXMLException
      Load a block of XML from an DOM node.
      Parameters:
      jobnode - The node to load from
      rep - The reference to a repository to load additional information from
      ignoreRepositorySharedObjects - Do not load shared objects, handled separately
      prompter - The prompter to use in case a shared object gets overwritten
      Throws:
      org.pentaho.di.core.exception.KettleXMLException
    • loadXML

      @Deprecated public void loadXML(Node jobnode, String fname, Repository rep, boolean ignoreRepositorySharedObjects, org.pentaho.di.core.gui.OverwritePrompter prompter) throws org.pentaho.di.core.exception.KettleXMLException
      Deprecated.
      Load a block of XML from an DOM node.
      Parameters:
      jobnode - The node to load from
      fname - The filename
      rep - The reference to a repository to load additional information from
      ignoreRepositorySharedObjects - Do not load shared objects, handled separately
      prompter - The prompter to use in case a shared object gets overwritten
      Throws:
      org.pentaho.di.core.exception.KettleXMLException
    • loadXML

      public void loadXML(Node jobnode, String fname, Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, boolean ignoreRepositorySharedObjects, org.pentaho.di.core.gui.OverwritePrompter prompter) throws org.pentaho.di.core.exception.KettleXMLException
      Load a block of XML from an DOM node.
      Parameters:
      jobnode - The node to load from
      fname - The filename
      rep - The reference to a repository to load additional information from
      metaStore - the MetaStore to use
      ignoreRepositorySharedObjects - Do not load shared objects, handled separately
      prompter - The prompter to use in case a shared object gets overwritten
      Throws:
      org.pentaho.di.core.exception.KettleXMLException
    • getJobEntryCopy

      public JobEntryCopy getJobEntryCopy(int x, int y, int iconsize)
      Gets the job entry copy.
      Parameters:
      x - the x
      y - the y
      iconsize - the iconsize
      Returns:
      the job entry copy
    • nrJobEntries

      public int nrJobEntries()
      Nr job entries.
      Returns:
      the int
    • nrJobHops

      public int nrJobHops()
      Nr job hops.
      Returns:
      the int
    • getJobHop

      public JobHopMeta getJobHop(int i)
      Gets the job hop.
      Parameters:
      i - the i
      Returns:
      the job hop
    • getJobEntry

      public JobEntryCopy getJobEntry(int i)
      Gets the job entry.
      Parameters:
      i - the i
      Returns:
      the job entry
    • addJobEntry

      public void addJobEntry(JobEntryCopy je)
      Adds the job entry.
      Parameters:
      je - the je
    • addJobHop

      public void addJobHop(JobHopMeta hi)
      Adds the job hop.
      Parameters:
      hi - the hi
    • addJobEntry

      public void addJobEntry(int p, JobEntryCopy si)
      Adds the job entry.
      Parameters:
      p - the p
      si - the si
    • addJobHop

      public void addJobHop(int p, JobHopMeta hi)
      Adds the job hop.
      Parameters:
      p - the p
      hi - the hi
    • removeJobEntry

      public void removeJobEntry(int i)
      Removes the job entry.
      Parameters:
      i - the i
    • removeJobHop

      public void removeJobHop(int i)
      Removes the job hop.
      Parameters:
      i - the i
    • removeJobHop

      public void removeJobHop(JobHopMeta hop)
      Removes a hop from the transformation. Also marks that the transformation's hops have changed.
      Parameters:
      hop - The hop to remove from the list of hops
    • indexOfJobHop

      public int indexOfJobHop(JobHopMeta he)
      Index of job hop.
      Parameters:
      he - the he
      Returns:
      the int
    • indexOfJobEntry

      public int indexOfJobEntry(JobEntryCopy ge)
      Index of job entry.
      Parameters:
      ge - the ge
      Returns:
      the int
    • setJobEntry

      public void setJobEntry(int idx, JobEntryCopy jec)
      Sets the job entry.
      Parameters:
      idx - the idx
      jec - the jec
    • findJobEntry

      public JobEntryCopy findJobEntry(String name, int nr, boolean searchHiddenToo)
      Find an existing JobEntryCopy by it's name and number
      Parameters:
      name - The name of the job entry copy
      nr - The number of the job entry copy
      Returns:
      The JobEntryCopy or null if nothing was found!
    • findJobEntry

      public JobEntryCopy findJobEntry(String full_name_nr)
      Find job entry.
      Parameters:
      full_name_nr - the full_name_nr
      Returns:
      the job entry copy
    • findJobHop

      public JobHopMeta findJobHop(String name)
      Find job hop.
      Parameters:
      name - the name
      Returns:
      the job hop meta
    • findJobHopFrom

      public JobHopMeta findJobHopFrom(JobEntryCopy jge)
      Find job hop from.
      Parameters:
      jge - the jge
      Returns:
      the job hop meta
    • findJobHop

      public JobHopMeta findJobHop(JobEntryCopy from, JobEntryCopy to)
      Find job hop.
      Parameters:
      from - the from
      to - the to
      Returns:
      the job hop meta
    • findJobHop

      public JobHopMeta findJobHop(JobEntryCopy from, JobEntryCopy to, boolean includeDisabled)
      Find job hop.
      Parameters:
      from - the from
      to - the to
      includeDisabled - the include disabled
      Returns:
      the job hop meta
    • findJobHopTo

      public JobHopMeta findJobHopTo(JobEntryCopy jge)
      Find job hop to.
      Parameters:
      jge - the jge
      Returns:
      the job hop meta
    • findNrPrevJobEntries

      public int findNrPrevJobEntries(JobEntryCopy from)
      Find nr prev job entries.
      Parameters:
      from - the from
      Returns:
      the int
    • findPrevJobEntry

      public JobEntryCopy findPrevJobEntry(JobEntryCopy to, int nr)
      Find prev job entry.
      Parameters:
      to - the to
      nr - the nr
      Returns:
      the job entry copy
    • findNrPrevJobEntries

      public int findNrPrevJobEntries(JobEntryCopy to, boolean info)
      Find nr prev job entries.
      Parameters:
      to - the to
      info - the info
      Returns:
      the int
    • findPrevJobEntry

      public JobEntryCopy findPrevJobEntry(JobEntryCopy to, int nr, boolean info)
      Find prev job entry.
      Parameters:
      to - the to
      nr - the nr
      info - the info
      Returns:
      the job entry copy
    • findNrNextJobEntries

      public int findNrNextJobEntries(JobEntryCopy from)
      Find nr next job entries.
      Parameters:
      from - the from
      Returns:
      the int
    • findNextJobEntry

      public JobEntryCopy findNextJobEntry(JobEntryCopy from, int cnt)
      Find next job entry.
      Parameters:
      from - the from
      cnt - the cnt
      Returns:
      the job entry copy
    • hasLoop

      public boolean hasLoop(JobEntryCopy entry)
      Checks for loop.
      Parameters:
      entry - the entry
      Returns:
      true, if successful
    • hasLoop

      @Deprecated public boolean hasLoop(JobEntryCopy entry, JobEntryCopy lookup, boolean info)
    • hasLoop

      public boolean hasLoop(JobEntryCopy entry, JobEntryCopy lookup)
      Checks for loop.
      Parameters:
      entry - the entry
      lookup - the lookup
      Returns:
      true, if successful
    • isEntryUsedInHops

      public boolean isEntryUsedInHops(JobEntryCopy jge)
      Checks if is entry used in hops.
      Parameters:
      jge - the jge
      Returns:
      true, if is entry used in hops
    • countEntries

      public int countEntries(String name)
      Count entries.
      Parameters:
      name - the name
      Returns:
      the int
    • findUnusedNr

      public int findUnusedNr(String name)
      Find unused nr.
      Parameters:
      name - the name
      Returns:
      the int
    • findMaxNr

      public int findMaxNr(String name)
      Find max nr.
      Parameters:
      name - the name
      Returns:
      the int
    • getAlternativeJobentryName

      public String getAlternativeJobentryName(String entryname)
      Proposes an alternative job entry name when the original already exists...
      Parameters:
      entryname - The job entry name to find an alternative for..
      Returns:
      The alternative stepname.
    • getAllJobGraphEntries

      public JobEntryCopy[] getAllJobGraphEntries(String name)
      Gets the all job graph entries.
      Parameters:
      name - the name
      Returns:
      the all job graph entries
    • getAllJobHopsUsing

      public JobHopMeta[] getAllJobHopsUsing(String name)
      Gets the all job hops using.
      Parameters:
      name - the name
      Returns:
      the all job hops using
    • isPathExist

      public boolean isPathExist(JobEntryInterface from, JobEntryInterface to)
    • selectAll

      public void selectAll()
      Select all.
    • unselectAll

      public void unselectAll()
      Unselect all.
    • getMaximum

      public org.pentaho.di.core.gui.Point getMaximum()
      Gets the maximum.
      Returns:
      the maximum
    • getMinimum

      public org.pentaho.di.core.gui.Point getMinimum()
      Get the minimum point on the canvas of a job
      Returns:
      Minimum coordinate of a step in the job
    • getSelectedLocations

      public org.pentaho.di.core.gui.Point[] getSelectedLocations()
      Gets the selected locations.
      Returns:
      the selected locations
    • getSelectedNoteLocations

      public org.pentaho.di.core.gui.Point[] getSelectedNoteLocations()
      Get all the selected note locations
      Returns:
      The selected step and notes locations.
    • getSelectedEntries

      public List<JobEntryCopy> getSelectedEntries()
      Gets the selected entries.
      Returns:
      the selected entries
    • getEntryIndexes

      public int[] getEntryIndexes(List<JobEntryCopy> entries)
      Gets the entry indexes.
      Parameters:
      entries - the entries
      Returns:
      the entry indexes
    • findStart

      public JobEntryCopy findStart()
      Find start.
      Returns:
      the job entry copy
    • toString

      public String toString()
      Gets a textual representation of the job. If its name has been set, it will be returned, otherwise the classname is returned.
      Overrides:
      toString in class Object
      Returns:
      the textual representation of the job.
    • isBatchIdPassed

      public boolean isBatchIdPassed()
      Gets the boolean value of batch id passed.
      Returns:
      Returns the batchIdPassed.
    • setBatchIdPassed

      public void setBatchIdPassed(boolean batchIdPassed)
      Sets the batch id passed.
      Parameters:
      batchIdPassed - The batchIdPassed to set.
    • getSQLStatements

      public List<org.pentaho.di.core.SQLStatement> getSQLStatements(Repository repository, org.pentaho.di.core.ProgressMonitorListener monitor) throws org.pentaho.di.core.exception.KettleException
      Throws:
      org.pentaho.di.core.exception.KettleException
    • getSQLStatements

      public List<org.pentaho.di.core.SQLStatement> getSQLStatements(Repository repository, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.core.ProgressMonitorListener monitor) throws org.pentaho.di.core.exception.KettleException
      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.KettleException
    • getArguments

      @Deprecated public String[] getArguments()
      Deprecated.
      Moved to the Job class
      Gets the arguments used for this job.
      Returns:
      Returns the arguments.
    • setArguments

      @Deprecated public void setArguments(String[] arguments)
      Deprecated.
      moved to the job class
      Sets the arguments.
      Parameters:
      arguments - The arguments to set.
    • getStringList

      public List<StringSearchResult> getStringList(boolean searchSteps, boolean searchDatabases, boolean searchNotes)
      Get a list of all the strings used in this job.
      Returns:
      A list of StringSearchResult with strings used in the job
    • getUsedVariables

      public List<String> getUsedVariables()
      Gets the used variables.
      Returns:
      the used variables
    • haveJobEntriesChanged

      public boolean haveJobEntriesChanged()
      Have job entries changed.
      Returns:
      true, if successful
    • haveJobHopsChanged

      public boolean haveJobHopsChanged()
      Have job hops changed.
      Returns:
      true, if successful
    • getJobversion

      public String getJobversion()
      Gets the version of the job.
      Returns:
      The version of the job
    • getJobstatus

      public int getJobstatus()
      Gets the status of the job.
      Returns:
      the status of the job
    • setJobversion

      public void setJobversion(String jobVersion)
      Set the version of the job.
      Parameters:
      jobVersion - The new version description of the job
    • setJobstatus

      public void setJobstatus(int jobStatus)
      Set the status of the job.
      Parameters:
      jobStatus - The new status description of the job
    • findJobEntry

      public static final JobEntryInterface findJobEntry(List<JobEntryInterface> jobentries, org.pentaho.di.repository.ObjectId id_jobentry)
      Find a jobentry with a certain ID in a list of job entries.
      Parameters:
      jobentries - The List of jobentries
      id_jobentry - The id of the jobentry
      Returns:
      The JobEntry object if one was found, null otherwise.
    • findJobEntryCopy

      public static final JobEntryCopy findJobEntryCopy(List<JobEntryCopy> jobcopies, org.pentaho.di.repository.ObjectId id_jobentry_copy)
      Find a jobentrycopy with a certain ID in a list of job entry copies.
      Parameters:
      jobcopies - The List of jobentry copies
      id_jobentry_copy - The id of the jobentry copy
      Returns:
      The JobEntryCopy object if one was found, null otherwise.
    • initializeVariablesFrom

      public void initializeVariablesFrom(org.pentaho.di.core.variables.VariableSpace parent)
      Specified by:
      initializeVariablesFrom in interface org.pentaho.di.core.variables.VariableSpace
      Overrides:
      initializeVariablesFrom in class AbstractMeta
    • setInternalKettleVariables

      public void setInternalKettleVariables(org.pentaho.di.core.variables.VariableSpace var)
      This method sets various internal kettle variables that can be used by the transformation.
      Specified by:
      setInternalKettleVariables in class AbstractMeta
    • updateCurrentDir

      protected void updateCurrentDir()
    • setInternalNameKettleVariable

      protected void setInternalNameKettleVariable(org.pentaho.di.core.variables.VariableSpace var)
      Sets the internal name kettle variable.
      Specified by:
      setInternalNameKettleVariable in class AbstractMeta
      Parameters:
      var - the new internal name kettle variable
    • setInternalFilenameKettleVariables

      protected void setInternalFilenameKettleVariables(org.pentaho.di.core.variables.VariableSpace var)
      Sets the internal filename kettle variables.
      Specified by:
      setInternalFilenameKettleVariables in class AbstractMeta
      Parameters:
      var - the new internal filename kettle variables
    • setInternalEntryCurrentDirectory

      protected void setInternalEntryCurrentDirectory()
    • checkJobEntries

      @Deprecated public void checkJobEntries(List<org.pentaho.di.core.CheckResultInterface> remarks, boolean only_selected, org.pentaho.di.core.ProgressMonitorListener monitor)
      Deprecated.
    • checkJobEntries

      public void checkJobEntries(List<org.pentaho.di.core.CheckResultInterface> remarks, boolean only_selected, org.pentaho.di.core.ProgressMonitorListener monitor, org.pentaho.di.core.variables.VariableSpace space, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore)
      Check all job entries within the job. Each Job Entry has the opportunity to check their own settings.
      Parameters:
      remarks - List of CheckResult remarks inserted into by each JobEntry
      only_selected - true if you only want to check the selected jobs
      monitor - Progress monitor (not presently in use)
    • getResourceDependencies

      public List<ResourceReference> getResourceDependencies()
      Gets the resource dependencies.
      Returns:
      the resource dependencies
    • exportResources

      public String exportResources(org.pentaho.di.core.variables.VariableSpace space, Map<String,ResourceDefinition> definitions, ResourceNamingInterface namingInterface, Repository repository, org.pentaho.metastore.api.IMetaStore metaStore) 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
      namingInterface - The resource naming interface allows the object to name appropriately
      repository - the repository object to load from
      metaStore - the central metastore to load non-kettle specific metadata 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
    • renameJobEntryIfNameCollides

      public void renameJobEntryIfNameCollides(JobEntryCopy je)
      See if the name of the supplied job entry copy doesn't collide with any other job entry copy in the job.
      Parameters:
      je - The job entry copy to verify the name for.
    • getJobCopies

      public List<JobEntryCopy> getJobCopies()
      Gets the job copies.
      Returns:
      the job copies
    • getJobhops

      public List<JobHopMeta> getJobhops()
      Gets the jobhops.
      Returns:
      the jobhops
    • getRepositoryElementType

      public org.pentaho.di.repository.RepositoryObjectType getRepositoryElementType()
      Specified by:
      getRepositoryElementType in interface org.pentaho.di.repository.RepositoryElementInterface
    • getLogChannel

      public org.pentaho.di.core.logging.LogChannelInterface getLogChannel()
      Gets the log channel.
      Returns:
      the log channel
    • composeJobEntryInterfaceList

      public List<JobEntryInterface> composeJobEntryInterfaceList()
      Create a unique list of job entry interfaces
      Returns:
    • getLogChannelId

      public String getLogChannelId()
      Specified by:
      getLogChannelId in interface org.pentaho.di.core.logging.LoggingObjectInterface
    • getObjectType

      public org.pentaho.di.core.logging.LoggingObjectType getObjectType()
      Specified by:
      getObjectType in interface org.pentaho.di.core.logging.LoggingObjectInterface
    • getJobEntryLogTable

      public JobEntryLogTable getJobEntryLogTable()
      Gets the job entry log table.
      Returns:
      the jobEntryLogTable
    • setJobEntryLogTable

      public void setJobEntryLogTable(JobEntryLogTable jobEntryLogTable)
      Sets the job entry log table.
      Parameters:
      jobEntryLogTable - the jobEntryLogTable to set
    • getLogTables

      public List<LogTableInterface> getLogTables()
      Gets the log tables.
      Returns:
      the log tables
    • hasRepositoryReferences

      public boolean hasRepositoryReferences()
      Checks whether the job has repository references.
      Returns:
      true if the job has repository references, false otherwise
    • lookupRepositoryReferences

      public void lookupRepositoryReferences(Repository repository) throws org.pentaho.di.core.exception.KettleException
      Look up the references after import
      Parameters:
      repository - the repository to reference.
      Throws:
      org.pentaho.di.core.exception.KettleException
    • isGatheringMetrics

      public boolean isGatheringMetrics()
      Returns whether or not the job is gathering metrics. The job will not gather metrics per se, but can pass this information into executable transformations.
      Specified by:
      isGatheringMetrics in interface org.pentaho.di.core.logging.LoggingObjectInterface
      Returns:
      the gatheringMetrics state
    • setGatheringMetrics

      public void setGatheringMetrics(boolean gatheringMetrics)
      Sets whether or not the job is gathering metrics.
      Specified by:
      setGatheringMetrics in interface org.pentaho.di.core.logging.LoggingObjectInterface
    • isForcingSeparateLogging

      public boolean isForcingSeparateLogging()
      Specified by:
      isForcingSeparateLogging in interface org.pentaho.di.core.logging.LoggingObjectInterface
    • setForcingSeparateLogging

      public void setForcingSeparateLogging(boolean forcingSeparateLogging)
      Specified by:
      setForcingSeparateLogging in interface org.pentaho.di.core.logging.LoggingObjectInterface
    • getExtraLogTables

      public List<LogTableInterface> getExtraLogTables()
    • setExtraLogTables

      public void setExtraLogTables(List<LogTableInterface> extraLogTables)
    • containsJobCopy

      public boolean containsJobCopy(JobEntryCopy jobCopy)
    • getMissingEntries

      public List<MissingEntry> getMissingEntries()
    • addMissingEntry

      public void addMissingEntry(MissingEntry missingEntry)
    • removeMissingEntry

      public void removeMissingEntry(MissingEntry missingEntry)
    • hasMissingPlugins

      public boolean hasMissingPlugins()
      Overrides:
      hasMissingPlugins in class AbstractMeta
    • getNamedClusterEmbedManager

      public NamedClusterEmbedManager getNamedClusterEmbedManager()
      Overrides:
      getNamedClusterEmbedManager in class AbstractMeta
    • getStartCopyName

      public String getStartCopyName()
    • setStartCopyName

      public void setStartCopyName(String startCopyName)
    • isExpandingRemoteJob

      public boolean isExpandingRemoteJob()
    • setExpandingRemoteJob

      public void setExpandingRemoteJob(boolean expandingRemoteJob)