Module: Trailblazer::Endpoint::Protocol::Domain

Defined in:
lib/trailblazer/endpoint/protocol.rb

Class Method Summary collapse

Class Method Details

.extension_for_terminus_handlerObject



111
112
113
114
# File 'lib/trailblazer/endpoint/protocol.rb', line 111

def self.extension_for_terminus_handler
  # this is called after {:output}.
  [[Trailblazer::Activity::TaskWrap::Pipeline.method(:insert_after), "task_wrap.call_task", ["endpoint.end_signal", method(:terminus_handler)]]]
end

.terminus_handler(wrap_ctx, original_args) ⇒ Object

taskWrap step that saves the return signal of the domain_activity. The taskWrap step is usually inserted after Trailblazer::Endpoint::Protocol::Domain.task_wraptask_wrap.output.



98
99
100
101
102
103
104
105
106
107
108
109
# File 'lib/trailblazer/endpoint/protocol.rb', line 98

def self.terminus_handler(wrap_ctx, original_args)

#      Unrecognized Signal `"bla"` returned from EndpointTest::LegacyCreate. Registered signals are,
# - #<Trailblazer::Activity::End semantic=:failure>
# - #<Trailblazer::Activity::End semantic=:success>
# - #<Trailblazer::Activity::End semantic=:fromail_fast>

# {:return_args} is the original "endpoint ctx" that was returned from the {:output} filter.
  wrap_ctx[:return_args][0][:domain_activity_return_signal] = wrap_ctx[:return_signal]

  return wrap_ctx, original_args
end