Class JobEntrySetVariables
- java.lang.Object
-
- org.pentaho.di.job.entry.JobEntryBase
-
- org.pentaho.di.job.entries.setvariables.JobEntrySetVariables
-
- All Implemented Interfaces:
Cloneable
,org.pentaho.di.core.AttributesInterface
,org.pentaho.di.core.CheckResultSourceInterface
,org.pentaho.di.core.ExtensionDataInterface
,org.pentaho.di.core.logging.LoggingObjectInterface
,org.pentaho.di.core.logging.LoggingObjectLifecycleInterface
,org.pentaho.di.core.variables.VariableSpace
,JobEntryInterface
,ResourceHolderInterface
public class JobEntrySetVariables extends JobEntryBase implements Cloneable, JobEntryInterface
This defines a 'Set variables' job entry.- Since:
- 06-05-2007
- Author:
- Samatar Hassan
-
-
Field Summary
Fields Modifier and Type Field Description String
filename
int
fileVariableType
boolean
replaceVars
static int
VARIABLE_TYPE_CURRENT_JOB
static int
VARIABLE_TYPE_JVM
static int
VARIABLE_TYPE_PARENT_JOB
static int
VARIABLE_TYPE_ROOT_JOB
String[]
variableName
int[]
variableType
static String[]
variableTypeCode
String[]
variableValue
-
Fields inherited from class org.pentaho.di.job.entry.JobEntryBase
attributesMap, containerObjectId, entryStepSetVariablesMap, extensionDataMap, log, metaStore, parentJob, parentJobMeta, rep, variables
-
-
Constructor Summary
Constructors Constructor Description JobEntrySetVariables()
JobEntrySetVariables(String n)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
allocate(int nrFields)
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 consistencyObject
clone()
This method is called when a job entry is duplicated in Spoon.boolean
evaluates()
This method must return true if the job entry supports the true/false outgoing hops.org.pentaho.di.core.Result
execute(org.pentaho.di.core.Result result, int nr)
Execute the job entry.String
getFilename()
Gets the filename of the job entry.int
getFileVariableType()
List<ResourceReference>
getResourceDependencies(JobMeta jobMeta)
Gets a list of all the resource dependencies that the step is depending on.int[]
getVariableType()
static int
getVariableType(String variableType)
static String
getVariableTypeCode(int variableType)
static String
getVariableTypeDescription(int variableType)
static String[]
getVariableTypeDescriptions()
String[]
getVariableValue()
String
getXML()
This method is called by PDI whenever a job entry needs to serialize its settings to XML.boolean
isReplaceVars()
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)
This method is called by PDI whenever a job entry needs to read its configuration from a PDI repository.void
loadXML(Node entrynode, List<org.pentaho.di.core.database.DatabaseMeta> databases, List<SlaveServer> slaveServers, Repository rep, org.pentaho.metastore.api.IMetaStore metaStore)
This method is called by PDI whenever a job entry needs to read its settings from XML.void
saveRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_job)
This method is called by PDI whenever a job entry needs to save its settings to a PDI repository.void
setFilename(String filename)
void
setFileVariableType(int fileVariableType)
void
setReplaceVars(boolean replaceVars)
void
setVariableName(String[] fieldValue)
void
setVariableType(int[] localVariable)
-
Methods inherited from class org.pentaho.di.job.entry.JobEntryBase
addDatetimeToFilename, check, clear, copyVariablesFrom, environmentSubstitute, environmentSubstitute, equals, exportResources, exportResources, fieldSubstitute, getAttribute, getAttributes, getAttributesMap, getBooleanValueOfVariable, getContainerObjectId, getDescription, getDialogClassName, getEntryStepSetVariable, getEntryStepSetVariablesMap, getExtensionDataMap, getHolderType, getLogChannel, getLogChannelId, getLogLevel, getMetaStore, getName, getObjectCopy, getObjectId, getObjectName, getObjectRevision, getObjectType, getParent, getParentJob, getParentJobMeta, getParentVariableSpace, getPluginId, getRealFilename, getReferencedObjectDescriptions, getRegistrationDate, getRepository, getRepositoryDirectory, getSQLStatements, getSQLStatements, getSQLStatements, getTypeDesc, getTypeId, getUsedDatabaseConnections, getVariable, getVariable, getVariables, hasChanged, hashCode, hasRepositoryReferences, initializeVariablesFrom, injectVariables, isBasic, isDebug, isDetailed, isDummy, isEvaluation, isForcingSeparateLogging, isFTP, isGatheringMetrics, isHTTP, isJob, isLoggingObjectInUse, isMail, isReferencedObjectEnabled, isRowlevel, isSFTP, isShell, isSpecial, isStart, isTransformation, isUnconditional, listVariables, loadReferencedObject, loadReferencedObject, loadRep, loadXML, loadXML, logBasic, logBasic, logDebug, logDebug, logDetailed, logDetailed, logError, logError, logError, logMinimal, logMinimal, logRowlevel, logRowlevel, lookupRepositoryReferences, parseRepositoryObjects, resetErrorsBeforeExecution, saveRep, setAttribute, setAttributes, setAttributesMap, setChanged, setChanged, setContainerObjectId, setDescription, setEntryStepSetVariable, setForcingSeparateLogging, setGatheringMetrics, setID, setLoggingObjectInUse, setLogLevel, setMetaStore, setName, setObjectId, setParentJob, setParentJobMeta, setParentVariableSpace, setPluginId, setRepository, setTypeId, setVariable, shareVariablesWith, toString
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.pentaho.di.job.entry.JobEntryInterface
check, clear, exportResources, exportResources, getDescription, getDialogClassName, getLogChannel, getName, getObjectId, getParentJob, getParentJobMeta, getPluginId, getRealFilename, getReferencedObjectDescriptions, getSQLStatements, getSQLStatements, getSQLStatements, getTypeId, getUsedDatabaseConnections, hasChanged, hasRepositoryReferences, isDummy, isEvaluation, isJob, isMail, isReferencedObjectEnabled, isShell, isSpecial, isStart, isTransformation, isUnconditional, loadReferencedObject, loadReferencedObject, loadRep, loadXML, lookupRepositoryReferences, resetErrorsBeforeExecution, saveRep, setChanged, setChanged, setDescription, setMetaStore, setName, setObjectId, setParentJob, setParentJobMeta, setPluginId, setRepository
-
-
-
-
Field Detail
-
replaceVars
public boolean replaceVars
-
variableName
public String[] variableName
-
variableValue
public String[] variableValue
-
variableType
public int[] variableType
-
filename
public String filename
-
fileVariableType
public int fileVariableType
-
VARIABLE_TYPE_JVM
public static final int VARIABLE_TYPE_JVM
- See Also:
- Constant Field Values
-
VARIABLE_TYPE_CURRENT_JOB
public static final int VARIABLE_TYPE_CURRENT_JOB
- See Also:
- Constant Field Values
-
VARIABLE_TYPE_PARENT_JOB
public static final int VARIABLE_TYPE_PARENT_JOB
- See Also:
- Constant Field Values
-
VARIABLE_TYPE_ROOT_JOB
public static final int VARIABLE_TYPE_ROOT_JOB
- See Also:
- Constant Field Values
-
variableTypeCode
public static final String[] variableTypeCode
-
-
Constructor Detail
-
JobEntrySetVariables
public JobEntrySetVariables(String n)
-
JobEntrySetVariables
public JobEntrySetVariables()
-
-
Method Detail
-
allocate
public void allocate(int nrFields)
-
clone
public Object clone()
Description copied from class:JobEntryBase
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.- Specified by:
clone
in interfaceJobEntryInterface
- Overrides:
clone
in classJobEntryBase
- Returns:
- a clone of the object
-
getXML
public String getXML()
Description copied from class:JobEntryBase
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.- Specified by:
getXML
in interfaceJobEntryInterface
- Overrides:
getXML
in classJobEntryBase
- Returns:
- the xml representation of the job entry
-
loadXML
public 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
Description copied from interface:JobEntryInterface
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.- Specified by:
loadXML
in interfaceJobEntryInterface
- Overrides:
loadXML
in classJobEntryBase
- Parameters:
entrynode
- the top-level XML nodedatabases
- the list of databasesslaveServers
- the list of slave serversrep
- the repository objectmetaStore
- The metaStore to optionally load from.- Throws:
org.pentaho.di.core.exception.KettleXMLException
- if any errors occur during the loading of the XML
-
loadRep
public 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
Description copied from interface:JobEntryInterface
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.- Specified by:
loadRep
in interfaceJobEntryInterface
- Overrides:
loadRep
in classJobEntryBase
- Parameters:
rep
- the repository objectmetaStore
- the MetaStore to useid_jobentry
- the id of the job entrydatabases
- the list of databasesslaveServers
- the list of slave servers- Throws:
org.pentaho.di.core.exception.KettleException
- if any errors occur during the load
-
saveRep
public void saveRep(Repository rep, org.pentaho.metastore.api.IMetaStore metaStore, org.pentaho.di.repository.ObjectId id_job) throws org.pentaho.di.core.exception.KettleException
Description copied from interface:JobEntryInterface
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.- Specified by:
saveRep
in interfaceJobEntryInterface
- Overrides:
saveRep
in classJobEntryBase
- Parameters:
rep
- the repositorymetaStore
- the MetaStore to useid_job
- the id_job- Throws:
org.pentaho.di.core.exception.KettleException
- if any errors occur during the save
-
execute
public org.pentaho.di.core.Result execute(org.pentaho.di.core.Result result, int nr) throws org.pentaho.di.core.exception.KettleException
Description copied from interface:JobEntryInterface
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.- Specified by:
execute
in interfaceJobEntryInterface
- Parameters:
result
- the previous resultnr
- 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
-
setReplaceVars
public void setReplaceVars(boolean replaceVars)
-
evaluates
public boolean evaluates()
Description copied from class:JobEntryBase
This method must return true if the job entry supports the true/false outgoing hops. For JobEntryBase, this method always returns false- Specified by:
evaluates
in interfaceJobEntryInterface
- Overrides:
evaluates
in classJobEntryBase
- Returns:
- false
-
isReplaceVars
public boolean isReplaceVars()
-
getVariableValue
public String[] getVariableValue()
-
setVariableName
public void setVariableName(String[] fieldValue)
- Parameters:
fieldValue
- The fieldValue to set.
-
getVariableType
public int[] getVariableType()
- Returns:
- Returns the local variable flag: true if this variable is only valid in the parents job.
-
getVariableTypeCode
public static final String getVariableTypeCode(int variableType)
- Parameters:
variableType
- The variable type, see also VARIABLE_TYPE_...- Returns:
- the variable type code for this variable type
-
getVariableTypeDescription
public static final String getVariableTypeDescription(int variableType)
- Parameters:
variableType
- The variable type, see also VARIABLE_TYPE_...- Returns:
- the variable type description for this variable type
-
getVariableType
public static final int getVariableType(String variableType)
- Parameters:
variableType
- The code or description of the variable type- Returns:
- The variable type
-
setVariableType
public void setVariableType(int[] localVariable)
- Parameters:
localVariable
- The localVariable to set.
-
getVariableTypeDescriptions
public static final String[] getVariableTypeDescriptions()
-
check
public 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)
Description copied from class:JobEntryBase
Allows JobEntry objects to check themselves for consistency- Specified by:
check
in interfaceJobEntryInterface
- Overrides:
check
in classJobEntryBase
- Parameters:
remarks
- List of CheckResult objects indicating consistency statusjobMeta
- the metadata object for the job entryspace
- the variable space to resolve string expressions with variables withrepository
- the repository to load Kettle objects frommetaStore
- the MetaStore to load common elements from
-
getResourceDependencies
public List<ResourceReference> getResourceDependencies(JobMeta jobMeta)
Description copied from class:JobEntryBase
Gets a list of all the resource dependencies that the step is depending on. In JobEntryBase, this method returns an empty resource dependency list.- Specified by:
getResourceDependencies
in interfaceJobEntryInterface
- Overrides:
getResourceDependencies
in classJobEntryBase
- Returns:
- an empty list of ResourceReferences
- See Also:
ResourceReference
-
getFilename
public String getFilename()
Description copied from class:JobEntryBase
Gets the filename of the job entry. For JobEntryBase, this method always returns null- Specified by:
getFilename
in interfaceJobEntryInterface
- Specified by:
getFilename
in interfaceorg.pentaho.di.core.logging.LoggingObjectInterface
- Overrides:
getFilename
in classJobEntryBase
- Returns:
- the filename
- See Also:
LoggingObjectInterface.getFilename()
-
setFilename
public void setFilename(String filename)
- Parameters:
filename
- the filename to set
-
getFileVariableType
public int getFileVariableType()
- Returns:
- the fileVariableType
-
setFileVariableType
public void setFileVariableType(int fileVariableType)
- Parameters:
fileVariableType
- the fileVariableType to set
-
-