Module: Trailblazer::Activity::DSL::Linear::DSL

Defined in:
lib/trailblazer/activity/dsl/linear.rb

Class Method Summary collapse

Class Method Details

.apply_adds_from_dsl(sequence, sequence_insert:, adds:, **options) ⇒ Object

Add one or several rows to the sequence. This is usually called from DSL methods such as step.



175
176
177
178
179
180
# File 'lib/trailblazer/activity/dsl/linear.rb', line 175

def apply_adds_from_dsl(sequence, sequence_insert:, adds:, **options)
  # This is the ADDS for the actual task.
  task_add = {row: Sequence.create_row(options), insert: sequence_insert} # Linear::Insert.method(:Prepend), end_id

  Sequence.apply_adds(sequence, [task_add] + adds)
end

.insert_task(sequence, sequence_insert:, **options) ⇒ Object

FIXME: DSL for strategies



166
167
168
169
170
171
# File 'lib/trailblazer/activity/dsl/linear.rb', line 166

def insert_task(sequence, sequence_insert:, **options)
  new_row = Sequence.create_row(**options)

  # {sequence_insert} is usually a function such as {Linear::Insert::Append} and its arguments.
  seq = Sequence.insert_row(sequence, row: new_row, insert: sequence_insert)
end