Class: Opera::Operation::Instructions::Executors::Step

Inherits:
Executor
  • Object
show all
Defined in:
lib/opera/operation/instructions/executors/step.rb

Instance Attribute Summary

Attributes inherited from Executor

#operation

Instance Method Summary collapse

Methods inherited from Executor

#add_instruction_output, #break_condition, #config, #context, #evaluate_instruction, #evaluate_instructions, #initialize, #production_mode?, #reporter, #result

Constructor Details

This class inherits a constructor from Opera::Operation::Executor

Instance Method Details

#call(instruction) ⇒ Object



8
9
10
11
12
13
14
15
16
17
# File 'lib/opera/operation/instructions/executors/step.rb', line 8

def call(instruction)
  method = instruction[:method]

  operation.result.add_execution(method) unless production_mode?
  operation.send(method)
rescue StandardError => exception
  reporter&.error(exception)
  operation.result.add_exception(method, "#{exception.message}, for #{operation.inspect}", classname: operation.class.name)
  operation.result
end