Interface JobEntryInterface

    • Method Detail

      • execute

        org.pentaho.di.core.Result execute​(org.pentaho.di.core.Result prev_result,
                                           int nr)
                                    throws org.pentaho.di.core.exception.KettleException
        Execute the job entry. The previous result and number of rows are provided to the method for the purpose of chaining job entries, transformations, etc.
        Parameters:
        prev_result - the previous result
        nr - the number of rows
        Returns:
        the Result object from execution of this job entry
        Throws:
        org.pentaho.di.core.exception.KettleException - if any Kettle exceptions occur
      • setParentJob

        void setParentJob​(Job job)
        Sets the parent job.
        Parameters:
        job - the parent job
      • getParentJob

        Job getParentJob()
        Gets the parent job.
        Returns:
        the parent job
      • getLogChannel

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

        void setRepository​(Repository repository)
        Sets the repository.
        Parameters:
        repository - the new repository
      • setMetaStore

        void setMetaStore​(org.pentaho.metastore.api.IMetaStore metaStore)
        Sets the MetaStore
        Parameters:
        metaStore - The new MetaStore to use
      • clear

        void clear()
        This method should clear out any variables, objects, etc. used by the job entry.
      • getObjectId

        org.pentaho.di.repository.ObjectId getObjectId()
        Gets the object id.
        Returns:
        the object id
      • setObjectId

        void setObjectId​(org.pentaho.di.repository.ObjectId id)
        Sets the object id.
        Parameters:
        id - the new object id
      • getName

        String getName()
        Gets the name of this job entry.
        Returns:
        the name
      • setName

        void setName​(String name)
        Sets the name for this job entry.
        Parameters:
        name - the new name
      • getPluginId

        String getPluginId()
        Gets the plugin id.
        Returns:
        the plugin id
      • setPluginId

        void setPluginId​(String pluginId)
        Sets the plugin id.
        Parameters:
        pluginId - the new plugin id
      • getDescription

        String getDescription()
        Gets the description of this job entry
        Returns:
        the description
      • setDescription

        void setDescription​(String description)
        Sets the description of this job entry
        Parameters:
        description - the new description
      • setChanged

        void setChanged()
        Sets whether the job entry has changed
      • setChanged

        void setChanged​(boolean ch)
        Sets whether the job entry has changed
        Parameters:
        ch - true if the job entry has changed, false otherwise
      • hasChanged

        boolean hasChanged()
        Checks whether the job entry has changed
        Returns:
        true if whether the job entry has changed
      • loadXML

        @Deprecated
        void loadXML​(Node entrynode,
                     List<org.pentaho.di.core.database.DatabaseMeta> databases,
                     List<SlaveServer> slaveServers,
                     Repository rep)
              throws org.pentaho.di.core.exception.KettleXMLException
        This method is called by PDI whenever a job entry needs to read its settings from XML. The XML node containing the job entry's settings is passed in as an argument. Again, the helper class org.pentaho.di.core.xml.XMLHandler is typically used to conveniently read the settings from the XML node.
        Parameters:
        entrynode - the top-level XML node
        databases - the list of databases
        slaveServers - the list of slave servers
        rep - the repository object
        Throws:
        org.pentaho.di.core.exception.KettleXMLException - if any errors occur during the loading of the XML
      • loadXML

        void loadXML​(Node entrynode,
                     List<org.pentaho.di.core.database.DatabaseMeta> databases,
                     List<SlaveServer> slaveServers,
                     Repository rep,
                     org.pentaho.metastore.api.IMetaStore metaStore)
              throws org.pentaho.di.core.exception.KettleXMLException
        This method is called by PDI whenever a job entry needs to read its settings from XML. The XML node containing the job entry's settings is passed in as an argument. Again, the helper class org.pentaho.di.core.xml.XMLHandler is typically used to conveniently read the settings from the XML node.
        Parameters:
        entrynode - the top-level XML node
        databases - the list of databases
        slaveServers - the list of slave servers
        rep - the repository object
        metaStore - The metaStore to optionally load from.
        Throws:
        org.pentaho.di.core.exception.KettleXMLException - if any errors occur during the loading of the XML
      • getXML

        String getXML()
        This method is called by PDI whenever a job entry needs to serialize its settings to XML. It is called when saving a job in Spoon. The method returns an XML string, containing the serialized settings. The string contains a series of XML tags, typically one tag per setting. The helper class org.pentaho.di.core.xml.XMLHandler is typically used to construct the XML string.
        Returns:
        the xml representation of the job entry
      • saveRep

        @Deprecated
        void saveRep​(Repository rep,
                     org.pentaho.di.repository.ObjectId id_job)
              throws org.pentaho.di.core.exception.KettleException
        This method is called by PDI whenever a job entry needs to save its settings to a PDI repository. The repository object passed in as the first argument provides a convenient set of methods for serializing job entry settings. When calling repository serialization methods, job id and job entry id are required. The job id is passed in to saveRep() as an argument, and the job entry id can be obtained by a call to getObjectId() inherited from the base class.
        Parameters:
        rep - the repository object
        id_job - the id_job
        Throws:
        org.pentaho.di.core.exception.KettleException - if any errors occur during the save
      • saveRep

        void saveRep​(Repository rep,
                     org.pentaho.metastore.api.IMetaStore metaStore,
                     org.pentaho.di.repository.ObjectId id_job)
              throws org.pentaho.di.core.exception.KettleException
        This method is called by PDI whenever a job entry needs to save its settings to a PDI repository. The repository object passed in as the first argument provides a convenient set of methods for serializing job entry settings. When calling repository serialization methods, job id and job entry id are required. The job id is passed in to saveRep() as an argument, and the job entry id can be obtained by a call to getObjectId() inherited from the base class.
        Parameters:
        rep - the repository
        metaStore - the MetaStore to use
        id_job - the id_job
        Throws:
        org.pentaho.di.core.exception.KettleException - if any errors occur during the save
      • loadRep

        @Deprecated
        void loadRep​(Repository rep,
                     org.pentaho.di.repository.ObjectId id_jobentry,
                     List<org.pentaho.di.core.database.DatabaseMeta> databases,
                     List<SlaveServer> slaveServers)
              throws org.pentaho.di.core.exception.KettleException
        This method is called by PDI whenever a job entry needs to read its configuration from a PDI repository. The job entry id given in the arguments should be used as the identifier when using the repository's serialization methods.
        Parameters:
        rep - the repository object
        id_jobentry - the id of the job entry
        databases - the list of databases
        slaveServers - the list of slave servers
        Throws:
        org.pentaho.di.core.exception.KettleException - if any errors occur during the load
      • loadRep

        void loadRep​(Repository rep,
                     org.pentaho.metastore.api.IMetaStore metaStore,
                     org.pentaho.di.repository.ObjectId id_jobentry,
                     List<org.pentaho.di.core.database.DatabaseMeta> databases,
                     List<SlaveServer> slaveServers)
              throws org.pentaho.di.core.exception.KettleException
        This method is called by PDI whenever a job entry needs to read its configuration from a PDI repository. The job entry id given in the arguments should be used as the identifier when using the repository's serialization methods.
        Parameters:
        rep - the repository object
        metaStore - the MetaStore to use
        id_jobentry - the id of the job entry
        databases - the list of databases
        slaveServers - the list of slave servers
        Throws:
        org.pentaho.di.core.exception.KettleException - if any errors occur during the load
      • isStart

        boolean isStart()
        Checks if the job entry has started
        Returns:
        true if started, false otherwise
      • isDummy

        boolean isDummy()
        Checks if this job entry is a dummy entry
        Returns:
        true if this job entry is a dummy entry, false otherwise
      • clone

        Object clone()
        This method is called when a job entry is duplicated in Spoon. It needs to return a deep copy of this job entry object. It is essential that the implementing class creates proper deep copies if the job entry configuration is stored in modifiable objects, such as lists or custom helper objects.
        Returns:
        a clone of the object
      • resetErrorsBeforeExecution

        boolean resetErrorsBeforeExecution()
        Checks whether a reset of the number of errors is required before execution.
        Returns:
        true if a reset of the number of errors is required before execution, false otherwise
      • evaluates

        boolean evaluates()
        This method must return true if the job entry supports the true/false outgoing hops. If the job entry does not support distinct outcomes, it must return false.
        Returns:
        true if the job entry supports the true/false outgoing hops, false otherwise
      • isUnconditional

        boolean isUnconditional()
        This method must return true if the job entry supports the unconditional outgoing hop. If the job entry does not support the unconditional hop, it must return false.
        Returns:
        true if the job entry supports the unconditional outgoing hop, false otherwise
      • isEvaluation

        boolean isEvaluation()
        Checks if the job entry is an evaluation
        Returns:
        true if the job entry is an evaluation, false otherwise
      • isTransformation

        boolean isTransformation()
        Checks if this job entry executes a transformation
        Returns:
        true if this job entry executes a transformation, false otherwise
      • isJob

        boolean isJob()
        Checks if the job entry executes a job
        Returns:
        true if the job entry executes a job, false otherwise
      • isShell

        boolean isShell()
        Checks if the job entry executes a shell program
        Returns:
        true if the job entry executes a shell program, false otherwise
      • isMail

        boolean isMail()
        Checks if the job entry sends email
        Returns:
        true if the job entry sends email, false otherwise
      • isSpecial

        boolean isSpecial()
        Checks if the job entry is of a special type (Start, Dummy, etc.)
        Returns:
        true if the job entry is of a special type, false otherwise
      • getSQLStatements

        @Deprecated
        List<org.pentaho.di.core.SQLStatement> getSQLStatements​(Repository repository)
                                                         throws org.pentaho.di.core.exception.KettleException
        Gets the SQL statements needed by this job entry to execute successfully.
        Parameters:
        repository - the repository
        Returns:
        a list of SQL statements
        Throws:
        org.pentaho.di.core.exception.KettleException - if any errors occur during the generation of SQL statements
      • getSQLStatements

        @Deprecated
        List<org.pentaho.di.core.SQLStatement> getSQLStatements​(Repository repository,
                                                                org.pentaho.di.core.variables.VariableSpace space)
                                                         throws org.pentaho.di.core.exception.KettleException
        Gets the SQL statements needed by this job entry to execute successfully, given a set of variables.
        Parameters:
        repository - the repository object
        space - a variable space object containing variable bindings
        Returns:
        a list of SQL statements
        Throws:
        org.pentaho.di.core.exception.KettleException - if any errors occur during the generation of SQL statements
      • getSQLStatements

        List<org.pentaho.di.core.SQLStatement> getSQLStatements​(Repository repository,
                                                                org.pentaho.metastore.api.IMetaStore metaStore,
                                                                org.pentaho.di.core.variables.VariableSpace space)
                                                         throws org.pentaho.di.core.exception.KettleException
        Gets the SQL statements needed by this job entry to execute successfully, given a set of variables.
        Parameters:
        repository - the repository object
        metaStore - the MetaStore to use
        space - a variable space object containing variable bindings
        Returns:
        a list of SQL statements
        Throws:
        org.pentaho.di.core.exception.KettleException - if any errors occur during the generation of SQL statements
      • getDialogClassName

        @Deprecated
        String getDialogClassName()
        Deprecated.
        As of release 8.1, use annotated-based dialog instead {@see org.pentaho.di.core.annotations.PluginDialog}
        Get the name of the class that implements the dialog for the job entry JobEntryBase provides a default
        Returns:
        the name of the class implementing the dialog for the job entry
      • getFilename

        String getFilename()
        Gets the filename of the job entry. This method is used by job entries and transformations that call or refer to other job entries.
        Returns:
        the filename
      • getRealFilename

        String getRealFilename()
        Gets the real filename of the job entry, by substituting any environment variables present in the filename.
        Returns:
        the real (resolved) filename for the job entry
      • getUsedDatabaseConnections

        org.pentaho.di.core.database.DatabaseMeta[] getUsedDatabaseConnections()
        This method returns all the database connections that are used by the job entry.
        Returns:
        an array of database connections meta-data, which is empty if no connections are used.
      • check

        void check​(List<org.pentaho.di.core.CheckResultInterface> remarks,
                   JobMeta jobMeta,
                   org.pentaho.di.core.variables.VariableSpace space,
                   Repository repository,
                   org.pentaho.metastore.api.IMetaStore metaStore)
        Allows JobEntry objects to check themselves for consistency
        Parameters:
        remarks - List of CheckResult objects indicating consistency status
        jobMeta - the metadata object for the job entry
        space - the variable space to resolve string expressions with variables with
        repository - the repository to load Kettle objects from
        metaStore - the MetaStore to load common elements from
      • getResourceDependencies

        List<ResourceReference> getResourceDependencies​(JobMeta jobMeta)
        Get a list of all the resource dependencies that the step is depending on.
        Returns:
        a list of all the resource dependencies that the step is depending on
      • exportResources

        @Deprecated
        String exportResources​(org.pentaho.di.core.variables.VariableSpace space,
                               Map<String,​ResourceDefinition> definitions,
                               ResourceNamingInterface namingInterface,
                               Repository repository)
                        throws org.pentaho.di.core.exception.KettleException
        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.
        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 be named appropriately
        repository - The repository to load resources 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
      • exportResources

        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
        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.
        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 be named appropriately
        repository - The repository to load resources from
        metaStore - the metaStore to load external 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
      • hasRepositoryReferences

        boolean hasRepositoryReferences()
        Checks whether the job entry defines one or more references to a repository object
        Returns:
        true if the job entry defines one or more references to a repository object, false otherwise
      • lookupRepositoryReferences

        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 - if any errors occur during the lookup
      • getReferencedObjectDescriptions

        String[] getReferencedObjectDescriptions()
        Returns:
        The objects referenced in the step, like a a transformation, a job, a mapper, a reducer, a combiner, ...
      • isReferencedObjectEnabled

        boolean[] isReferencedObjectEnabled()
        Returns:
        true for each referenced object that is enabled or has a valid reference definition.
      • loadReferencedObject

        @Deprecated
        Object loadReferencedObject​(int index,
                                    Repository rep,
                                    org.pentaho.di.core.variables.VariableSpace space)
                             throws org.pentaho.di.core.exception.KettleException
        Load the referenced object
        Parameters:
        index - the referenced object index to load (in case there are multiple references)
        rep - the repository
        space - the variable space to use
        Returns:
        the referenced object once loaded
        Throws:
        org.pentaho.di.core.exception.KettleException
      • loadReferencedObject

        Object loadReferencedObject​(int index,
                                    Repository rep,
                                    org.pentaho.metastore.api.IMetaStore metaStore,
                                    org.pentaho.di.core.variables.VariableSpace space)
                             throws org.pentaho.di.core.exception.KettleException
        Load the referenced object
        Parameters:
        index - the referenced object index to load (in case there are multiple references)
        rep - the repository
        metaStore - the metaStore
        space - the variable space to use
        Returns:
        the referenced object once loaded
        Throws:
        org.pentaho.di.core.exception.KettleException
      • setParentJobMeta

        default void setParentJobMeta​(JobMeta jobMeta)
        At save and run time, the system will attempt to set the jobMeta so that it can be accessed by the jobEntries if necessary. This default method will be applied to all JobEntries that do not need to be aware of the parent JobMeta
        Parameters:
        jobMeta - the JobMeta to which this JobEntryInterface belongs
      • getParentJobMeta

        default JobMeta getParentJobMeta()
        Return Gets the parent jobMeta. This default method will throw an exception if a job entry attempts to call the getter when not implemented.