Module: Trailblazer::Circuit::Wrap
- Defined in:
- lib/trailblazer/circuit/wrap.rb
Defined Under Namespace
Modules: Runner Classes: Alterations, End
Constant Summary collapse
- Call =
method(:call_task)
- Activity =
Wrap::Activity is the actual circuit that implements the Task wrap. This circuit is also known as ‘task_wrap`.
Example with tracing:
|-- Start |-- Trace.capture_args [optional] |-- Call (call actual task) |-- Trace.capture_return [optional] |-- End
Trailblazer::Circuit::Activity({ id: "task.wrap" }, end: { default: End.new(:default) }) do |act| { act[:Start] => { Right => Call }, # see Wrap::call_task Call => { Right => act[:End] }, } end
Class Method Summary collapse
-
.call_task(direction, options, flow_options, wrap_config, original_flow_options) ⇒ Object
The call_task method implements one default step ‘Call` in the Wrap::Activity circuit.
Class Method Details
.call_task(direction, options, flow_options, wrap_config, original_flow_options) ⇒ Object
The call_task method implements one default step ‘Call` in the Wrap::Activity circuit. It calls the actual, wrapped task.
38 39 40 41 42 43 44 45 |
# File 'lib/trailblazer/circuit/wrap.rb', line 38 def self.call_task(direction, , , wrap_config, ) task = wrap_config[:task] # Call the actual task we're wrapping here. wrap_config[:result_direction], , = task.( direction, , ) [ direction, , , wrap_config, ] end |