Class: Tasker::Orchestration::StepSequenceFactory

Inherits:
Object
  • Object
show all
Defined in:
lib/tasker/orchestration/step_sequence_factory.rb

Overview

StepSequenceFactory handles creation and management of step sequences

This component is responsible for:

  • Getting workflow steps for tasks
  • Establishing step dependencies and defaults
  • Creating StepSequence objects

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.create_sequence_for_task!Tasker::Types::StepSequence

Create sequence for a task (used during task initialization)

Parameters:

  • task (Tasker::Task)

    The task to create sequence for

  • task_handler (Object)

    The task handler instance

Returns:



27
# File 'lib/tasker/orchestration/step_sequence_factory.rb', line 27

delegate :create_sequence_for_task!, to: :new

.get_sequenceTasker::Types::StepSequence

Get the step sequence for a task

Retrieves all workflow steps for the task and establishes their dependencies.

Parameters:

  • task (Tasker::Task)

    The task to get the sequence for

  • task_handler (Object)

    The task handler instance

Returns:



20
# File 'lib/tasker/orchestration/step_sequence_factory.rb', line 20

delegate :get_sequence, to: :new

Instance Method Details

#create_sequence_for_task!(task, task_handler) ⇒ Tasker::Types::StepSequence

Create sequence for a task (used during task initialization)

Parameters:

  • task (Tasker::Task)

    The task to create sequence for

  • task_handler (Object)

    The task handler instance

Returns:



46
47
48
49
50
# File 'lib/tasker/orchestration/step_sequence_factory.rb', line 46

def create_sequence_for_task!(task, task_handler)
  steps = Tasker::WorkflowStep.get_steps_for_task(task, task_handler.step_templates)
  establish_step_dependencies_and_defaults(task, steps, task_handler)
  Tasker::Types::StepSequence.new(steps: steps)
end

#get_sequence(task, task_handler) ⇒ Tasker::Types::StepSequence

Get the step sequence for a task

Parameters:

  • task (Tasker::Task)

    The task to get the sequence for

  • task_handler (Object)

    The task handler instance

Returns:



35
36
37
38
39
# File 'lib/tasker/orchestration/step_sequence_factory.rb', line 35

def get_sequence(task, task_handler)
  steps = Tasker::WorkflowStep.get_steps_for_task(task, task_handler.step_templates)
  establish_step_dependencies_and_defaults(task, steps, task_handler)
  Tasker::Types::StepSequence.new(steps: steps)
end