Class 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
    • Method Detail

      • getWorkflow

        public Workflow getWorkflow()
        Description copied from interface: Step
        Get the workflow of the step.
        Specified by:
        getWorkflow in interface Step
        Returns:
        the workflow of the step
      • getNumber

        public int getNumber()
        Description copied from interface: Step
        Get the unique numerical identifier of the step.
        Specified by:
        getNumber in interface Step
        Returns:
        the number of the step
      • getId

        public String getId()
        Description copied from interface: Step
        Get step id.
        Specified by:
        getId in interface Step
        Returns:
        the step id
      • getStepVersion

        public String getStepVersion()
        Description copied from interface: Step
        Get the step version required by user.
        Specified by:
        getStepVersion in interface Step
        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
        Specified by:
        isSkip in interface Step
        Returns:
        true 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.
        Specified by:
        getType in interface Step
        Returns:
        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 interface Step
        Returns:
        the module object
      • getState

        public Step.StepState getState()
        Description copied from interface: Step
        Get the state of the step.
        Specified by:
        getState in interface Step
        Returns:
        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 interface Step
        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 interface Step
        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 interface Step
        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 interface Step
        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 interface Step
        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 interface Step
        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 dependency
        dependencyOutputPort - the output port of the step
      • addDependency

        protected void addDependency​(AbstractStep step)
        Add a dependency for this step.
        Parameters:
        step - the dependency