Class AbstractStep
- java.lang.Object
-
- fr.ens.biologie.genomique.eoulsan.core.workflow.AbstractStep
-
- All Implemented Interfaces:
Step
,Serializable
- Direct Known Subclasses:
CommandStep
public abstract class AbstractStep extends Object implements Step
This class define a step of the workflow. This class must be extended by a class to be able to work with a specific workflow file format.- Since:
- 2.0
- Author:
- Laurent Jourdren
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface fr.ens.biologie.genomique.eoulsan.core.Step
Step.DiscardOutput, Step.StepState, Step.StepType
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
addDependency(AbstractStep step)
Add a dependency for this step.protected void
addDependency(fr.ens.biologie.genomique.eoulsan.core.workflow.StepInputPort inputPort, fr.ens.biologie.genomique.eoulsan.core.workflow.StepOutputPort dependencyOutputPort)
Add a dependency for this step.protected void
configure()
Configure the step.Checker
getChecker()
Get Checker.Step.DiscardOutput
getDiscardOutput()
Get the discard output value.ExecutionMode
getEoulsanMode()
Get the Eoulsan mode of the step.String
getId()
Get step id.InputPorts
getInputPorts()
Get the input ports of the step.Module
getModule()
Get the underlying Module object.String
getModuleName()
Get the module name.int
getNumber()
Get the unique numerical identifier of the step.OutputPorts
getOutputPorts()
Get the output ports of the step.ParallelizationMode
getParallelizationMode()
Get the parallelization mode of the step.Set<Parameter>
getParameters()
Get the parameter of the step.int
getRequiredMemory()
Get the required memory for the step.int
getRequiredProcessors()
Get the required processors for the step.Step.StepState
getState()
Get the state of the step.DataFile
getStepOutputDirectory()
Get step output directory (where output file of the step will be written).String
getStepVersion()
Get the step version required by user.Step.StepType
getType()
Get the type of the step.Workflow
getWorkflow()
Get the workflow of the step.boolean
isSkip()
Test if the step must be skippedprotected boolean
isTerminalStep()
Test if the step is a terminal step.protected void
registerInputAndOutputPorts(Module module)
-
-
-
Method Detail
-
getWorkflow
public Workflow getWorkflow()
Description copied from interface:Step
Get the workflow of the step.- Specified by:
getWorkflow
in interfaceStep
- Returns:
- the workflow of the step
-
getNumber
public int getNumber()
Description copied from interface:Step
Get the unique numerical identifier of the step.
-
getStepVersion
public String getStepVersion()
Description copied from interface:Step
Get the step version required by user.- Specified by:
getStepVersion
in interfaceStep
- Returns:
- a string with the version of the step required by the user
-
isSkip
public boolean isSkip()
Description copied from interface:Step
Test if the step must be skipped
-
isTerminalStep
protected boolean isTerminalStep()
Test if the step is a terminal step.- Returns:
- true if the step is a terminal step
-
getType
public Step.StepType getType()
Description copied from interface:Step
Get the type of the step.
-
getModule
public Module getModule()
Get the underlying Module object.- Returns:
- the Module object
-
getEoulsanMode
public ExecutionMode getEoulsanMode()
Get the Eoulsan mode of the step.- Returns:
- an EoulsanMode enum
-
getModuleName
public String getModuleName()
Description copied from interface:Step
Get the module name.- Specified by:
getModuleName
in interfaceStep
- Returns:
- the module object
-
getState
public Step.StepState getState()
Description copied from interface:Step
Get the state of the step.
-
getParameters
public Set<Parameter> getParameters()
Description copied from interface:Step
Get the parameter of the step.- Specified by:
getParameters
in interfaceStep
- Returns:
- a Set with the parameters of the step
-
getInputPorts
public InputPorts getInputPorts()
Description copied from interface:Step
Get the input ports of the step.- Specified by:
getInputPorts
in interfaceStep
- Returns:
- the input ports of the step
-
getOutputPorts
public OutputPorts getOutputPorts()
Description copied from interface:Step
Get the output ports of the step.- Specified by:
getOutputPorts
in interfaceStep
- Returns:
- the output ports of the step
-
getRequiredMemory
public int getRequiredMemory()
Description copied from interface:Step
Get the required memory for the step.- Specified by:
getRequiredMemory
in interfaceStep
- Returns:
- the required memory of the step in MB or -1 if the default setting must be used
-
getRequiredProcessors
public int getRequiredProcessors()
Description copied from interface:Step
Get the required processors for the step.- Specified by:
getRequiredProcessors
in interfaceStep
- Returns:
- the required processors count for the step in MB or -1 if the default setting must be used
-
getChecker
public Checker getChecker()
Description copied from interface:Step
Get Checker.- Specified by:
getChecker
in interfaceStep
- Returns:
- the checker for the step
-
getStepOutputDirectory
public DataFile getStepOutputDirectory()
Get step output directory (where output file of the step will be written).- Returns:
- the output directory
-
getParallelizationMode
public ParallelizationMode getParallelizationMode()
Get the parallelization mode of the step.- Returns:
- a ParallelizationMode enum
-
getDiscardOutput
public Step.DiscardOutput getDiscardOutput()
Get the discard output value.- Returns:
- the discard output value
-
registerInputAndOutputPorts
protected void registerInputAndOutputPorts(Module module)
-
addDependency
protected void addDependency(fr.ens.biologie.genomique.eoulsan.core.workflow.StepInputPort inputPort, fr.ens.biologie.genomique.eoulsan.core.workflow.StepOutputPort dependencyOutputPort)
Add a dependency for this step.- Parameters:
inputPort
- the input port provided by the dependencydependencyOutputPort
- the output port of the step
-
addDependency
protected void addDependency(AbstractStep step)
Add a dependency for this step.- Parameters:
step
- the dependency
-
configure
protected void configure() throws EoulsanException
Configure the step.- Throws:
EoulsanException
- if an error occurs while configuring a step
-
-