class Trailblazer::Activity::TaskBuilder::Task

Public Class Methods

new(task, user_proc) click to toggle source
# File lib/trailblazer/activity/task_builder.rb, line 22
def initialize(task, user_proc)
  @task            = task
  @user_proc       = user_proc

  freeze
end

Public Instance Methods

call( (ctx, flow_options), **circuit_options ) click to toggle source
# File lib/trailblazer/activity/task_builder.rb, line 29
def call( (ctx, flow_options), **circuit_options )
  # Execute the user step with TRB's kw args.
  result = @task.(ctx, keyword_arguments: ctx.to_hash, **circuit_options) # circuit_options contains :exec_context.

  # Return an appropriate signal which direction to go next.
  signal = Activity::TaskBuilder.binary_signal_for(result, Activity::Right, Activity::Left)

  return signal, [ctx, flow_options]
end
inspect() click to toggle source
# File lib/trailblazer/activity/task_builder.rb, line 39
def inspect # TODO: make me private!
  %{#<Trailblazer::Activity::TaskBuilder::Task user_proc=#{Trailblazer::Activity::Introspect.render_task(@user_proc)}>}
end
Also aliased as: to_s
to_s()
Alias for: inspect