Class: Camunda::Task
- Includes:
- VariableSerialization
- Defined in:
- lib/camunda/task.rb
Defined Under Namespace
Classes: MissingTask
Class Method Summary collapse
- .find_by_business_key_and_task_definition_key!(instance_business_key, task_key) ⇒ Object
- .mark_task_completed!(instance_business_key, task_key, variables = {}) ⇒ Object
Instance Method Summary collapse
Methods included from VariableSerialization
Methods inherited from Model
Class Method Details
.find_by_business_key_and_task_definition_key!(instance_business_key, task_key) ⇒ Object
5 6 7 8 9 10 11 12 |
# File 'lib/camunda/task.rb', line 5 def self.find_by_business_key_and_task_definition_key!(instance_business_key, task_key) find_by(instanceBusinessKey: instance_business_key, taskDefinitionKey: task_key).tap do |ct| unless ct raise MissingTask, "Could not find Camunda Task with processInstanceBusinessKey: #{instance_business_key} " \ "and taskDefinitionKey #{task_key}" end end end |
.mark_task_completed!(instance_business_key, task_key, variables = {}) ⇒ Object
14 15 16 17 |
# File 'lib/camunda/task.rb', line 14 def self.mark_task_completed!(instance_business_key, task_key, variables={}) ct = find_by_business_key_and_task_definition_key!(instance_business_key, task_key) ct.complete! variables end |
Instance Method Details
#complete!(vars) ⇒ Object
19 20 21 22 23 24 |
# File 'lib/camunda/task.rb', line 19 def complete!(vars) self.class.post_raw("#{self.class.collection_path}/#{id}/complete", variables: serialize_variables(vars))[:response] .tap do |response| raise MissingTask unless response.success? end end |