Interface NestedPipelineStep

All Superinterfaces:
Identified, Step

public interface NestedPipelineStep extends Step

A Step that uses another pipeline as part of its processing. These are treated specially as their nested pipeline needs to be found, validated, realized and generally inspectable by the engine and the user.

  • Method Details

    • getState

      Returns:
      the state of this step, indicating what getNestedPipeline will return.
    • setNestedPipelineId

      NestedPipelineStep setNestedPipelineId(String pipelineId) throws IllegalStateException
      Returns:
      a clone of this pipeline with the nested pipeline being set. This should happen during project initialization and must leave the original step unaltered.
      Throws:
      IllegalStateException - if this pipeline is not in the EMPTY state
    • getNestedPipeline

      Pipeline getNestedPipeline()
      Returns:
      the nested pipeline that has been set, or stub pipeline with just an id set to the desired pipeline.
    • populate

      void populate(Pipeline populateUsing) throws IllegalStateException

      Update this nested pipeline to have values from populateUsing - this is a slight contradiction to the otherwise immutable-ness of steps, but is counter-acted with some explicit state tracking to prevent accidental or improper mutation during construction.

      Throws:
      IllegalStateException - if this pipeline is not in the POINTER state
    • getSubPipelineParameter

      Parameter getSubPipelineParameter()

      Get the Parameter that should be set with the id of the desired sub Pipeline.

      Returns:
      sub pipeline parameter