Method: ProcessEngine::ProcessTask#complete
- Defined in:
- app/models/process_engine/process_task.rb
#complete(options) ⇒ Object
available options :finisher, :data
29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'app/models/process_engine/process_task.rb', line 29 def complete() injected_data = ProcessEngine::NodeDataInjection.(process_instance.process_definition.slug, state, self) process_instance.move_to_next_state(state, injected_data) opt = { finisher: [:finisher], status: :finished } opt[:data] = [:data] if [:data].present? update!(opt) # enable service hooks node_ext = process_instance.process_definition.schema.node(state).node_extension ProcessEngine::Listener::Base.execute(process_instance, node_ext.common_execution_listeners, 'end') ProcessEngine::Listener::Base.execute(process_instance, node_ext.common_task_listeners, 'complete') end |