Package weka.knowledgeflow.steps
Class Job
- java.lang.Object
-
- weka.knowledgeflow.steps.BaseStep
-
- weka.knowledgeflow.steps.Job
-
- All Implemented Interfaces:
java.io.Serializable,BaseStepExtender,Step
@KFStep(name="Job", category="Flow", toolTipText="Execute a flow as a \'job\' and wait for it to finish", iconPath="weka/gui/knowledgeflow/icons/Job.gif") public class Job extends BaseStep
Step that executes another flow as a "job". Typically, you would parameterize the flow to be executed with variables (in steps that support variables) and then use a a data source connected to a SetVariables step to change the values of the variables dynamically at runtime. For example, a DataGrid could be used to define a set of instances with a string variable containing paths to ARFF files to process; SetVariables can be used to transfer these file paths from the incoming instances generated by DataGrid to the values of variables; then the Job step can execute it's sub-flow for each configuration of variables received, thus processing a different ARFF file (if the subflow uses an ArffLoader step).- Version:
- $Revision: $
- Author:
- Mark Hall (mhall{[at]}pentaho{[dot]}com)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description Job()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetCustomEditorForStep()Get the custom editor for this stepjava.io.FilegetFlowFile()java.util.List<java.lang.String>getIncomingConnectionTypes()Get a list of incoming connection types that this step can accept.java.util.List<java.lang.String>getOutgoingConnectionTypes()Get a list of outgoing connection types that this step can produce.voidprocessIncoming(Data data)Process an incoming data payload (if the step accepts incoming connections)voidsetFlowFile(java.io.File flowFile)voidstart()Start processing.voidstepInit()Initialize the step.-
Methods inherited from class weka.knowledgeflow.steps.BaseStep
environmentSubstitute, getDefaultSettings, getInteractiveViewers, getInteractiveViewersImpls, getName, getStepManager, globalInfo, isResourceIntensive, isStopRequested, outputStructureForConnectionType, outputStructureForConnectionType, setName, setStepIsResourceIntensive, setStepManager, setStepMustRunSingleThreaded, stepMustRunSingleThreaded, stop
-
-
-
-
Method Detail
-
setFlowFile
@FilePropertyMetadata(fileChooserDialogType=0, directoriesOnly=false) @OptionMetadata(displayName="Flow file", description="The flow to execute", displayOrder=0) public void setFlowFile(java.io.File flowFile)
-
getFlowFile
public java.io.File getFlowFile()
-
stepInit
public void stepInit() throws WekaExceptionDescription copied from interface:StepInitialize the step.- Throws:
WekaException- if a problem occurs during initialization
-
start
public void start() throws WekaExceptionDescription copied from class:BaseStepStart processing. Subclasses should override this method if they can act as a start point in a flow.- Specified by:
startin interfaceBaseStepExtender- Specified by:
startin interfaceStep- Overrides:
startin classBaseStep- Throws:
WekaException- if a problem occurs
-
processIncoming
public void processIncoming(Data data) throws WekaException
Description copied from class:BaseStepProcess an incoming data payload (if the step accepts incoming connections)- Specified by:
processIncomingin interfaceBaseStepExtender- Specified by:
processIncomingin interfaceStep- Overrides:
processIncomingin classBaseStep- Parameters:
data- the payload to process- Throws:
WekaException- if a problem occurs
-
getIncomingConnectionTypes
public java.util.List<java.lang.String> getIncomingConnectionTypes()
Description copied from interface:StepGet a list of incoming connection types that this step can accept. Ideally (and if appropriate), this should take into account the state of the step and any existing incoming connections. E.g. a step might be able to accept one (and only one) incoming batch data connection.- Returns:
- a list of incoming connections that this step can accept given its current state
-
getOutgoingConnectionTypes
public java.util.List<java.lang.String> getOutgoingConnectionTypes()
Description copied from interface:StepGet a list of outgoing connection types that this step can produce. Ideally (and if appropriate), this should take into account the state of the step and the incoming connections. E.g. depending on what incoming connection is present, a step might be able to produce a trainingSet output, a testSet output or neither, but not both.- Returns:
- a list of outgoing connections that this step can produce
-
getCustomEditorForStep
public java.lang.String getCustomEditorForStep()
Get the custom editor for this step- Specified by:
getCustomEditorForStepin interfaceStep- Overrides:
getCustomEditorForStepin classBaseStep- Returns:
- the fully qualified class name of the clustom editor for this step
-
-