Class: Trailblazer::Operation::Callable

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Includes:
Activity::Interface
Defined in:
lib/trailblazer/operation/callable.rb

Overview

Subprocess allows to have tasks with a different call interface and start event.

Instance Method Summary collapse

Constructor Details

#initialize(activity, call: :call, **options) ⇒ Callable

Returns a new instance of Callable.



23
24
25
26
27
# File 'lib/trailblazer/operation/callable.rb', line 23

def initialize(activity, call: :call, **options)
  @activity = activity
  @options  = options
  @call     = call
end

Instance Method Details

#call(args, **circuit_options) ⇒ Object



29
30
31
# File 'lib/trailblazer/operation/callable.rb', line 29

def call(args, **circuit_options)
  @activity.public_send(@call, args, circuit_options.merge(@options))
end

#to_sObject



37
38
39
# File 'lib/trailblazer/operation/callable.rb', line 37

def to_s
  %{#<Trailblazer::Activity::Callable activity=#{@activity}>}
end