Module: Operaton::Bpm::Client::Task::ExternalTaskHandler
- Defined in:
- lib/operaton/bpm/client/task/external_task_handler.rb
Overview
Mirrors org.operaton.bpm.client.task.ExternalTaskHandler, a functional interface. Handlers may be any object responding to #execute(external_task, external_task_service) or any callable (Proc/lambda) taking the same two arguments.
Class Method Summary collapse
-
.invoke(handler, external_task, external_task_service) ⇒ Object
Invokes a handler regardless of which convention it follows.
Instance Method Summary collapse
Class Method Details
.invoke(handler, external_task, external_task_service) ⇒ Object
Invokes a handler regardless of which convention it follows.
17 18 19 20 21 22 23 |
# File 'lib/operaton/bpm/client/task/external_task_handler.rb', line 17 def self.invoke(handler, external_task, external_task_service) if handler.respond_to?(:execute) handler.execute(external_task, external_task_service) else handler.call(external_task, external_task_service) end end |
Instance Method Details
#execute(external_task, external_task_service) ⇒ Object
12 13 14 |
# File 'lib/operaton/bpm/client/task/external_task_handler.rb', line 12 def execute(external_task, external_task_service) raise NotImplementedError, "#{self.class} must implement #execute" end |