Class: ProcessEngine::Schema::NodeExtension
- Inherits:
-
Object
- Object
- ProcessEngine::Schema::NodeExtension
- Defined in:
- app/models/process_engine/schema/node_extension.rb
Instance Attribute Summary collapse
-
#extension ⇒ Object
readonly
Returns the value of attribute extension.
Instance Method Summary collapse
- #common ⇒ Object
- #common_execution_listeners ⇒ Object
- #common_form_fields ⇒ Object
- #common_form_fields_objects ⇒ Object
- #common_inputs_outputs ⇒ Object
- #common_inputs_outputs_input_parameters ⇒ Object
- #common_inputs_outputs_output_parameters ⇒ Object
- #common_properties ⇒ Object
- #common_properties_kv ⇒ Object
- #common_task_listeners ⇒ Object
- #gateway_default_flow ⇒ Object
-
#initialize(node) ⇒ NodeExtension
constructor
A new instance of NodeExtension.
- #start_event_initiator ⇒ Object
- #user_task_assignee ⇒ Object
- #user_task_candidate_groups ⇒ Object
- #user_task_candidate_users ⇒ Object
Constructor Details
#initialize(node) ⇒ NodeExtension
Returns a new instance of NodeExtension.
4 5 6 7 |
# File 'app/models/process_engine/schema/node_extension.rb', line 4 def initialize(node) @node = node @extension = node.extension end |
Instance Attribute Details
#extension ⇒ Object (readonly)
Returns the value of attribute extension.
2 3 4 |
# File 'app/models/process_engine/schema/node_extension.rb', line 2 def extension @extension end |
Instance Method Details
#common ⇒ Object
9 10 11 |
# File 'app/models/process_engine/schema/node_extension.rb', line 9 def common extension.fetch("common", {}) end |
#common_execution_listeners ⇒ Object
55 56 57 |
# File 'app/models/process_engine/schema/node_extension.rb', line 55 def common_execution_listeners common.fetch("execution_listeners", []).map{ |el| ActiveSupport::HashWithIndifferentAccess.new(el) } end |
#common_form_fields ⇒ Object
22 23 24 |
# File 'app/models/process_engine/schema/node_extension.rb', line 22 def common_form_fields common.fetch("form_fields", []) end |
#common_form_fields_objects ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'app/models/process_engine/schema/node_extension.rb', line 26 def common_form_fields_objects common_form_fields.map do |field| obj = (Struct.new(:id, :type, :label, :validation, :default_value, :properties)).new obj.id = field["id"] obj.type = field["type"] obj.label = field["label"] obj.default_value = field["default_value"] obj.validation = ActiveSupport::HashWithIndifferentAccess.new(field.fetch("validation", {})) obj.properties = ActiveSupport::HashWithIndifferentAccess.new(field.fetch("properties", {})) obj end end |
#common_inputs_outputs ⇒ Object
39 40 41 |
# File 'app/models/process_engine/schema/node_extension.rb', line 39 def common_inputs_outputs common.fetch("inputs_outputs", {}) end |
#common_inputs_outputs_input_parameters ⇒ Object
43 44 45 |
# File 'app/models/process_engine/schema/node_extension.rb', line 43 def common_inputs_outputs_input_parameters common_inputs_outputs.fetch("input_parameters", []).map{ |el| ActiveSupport::HashWithIndifferentAccess.new(el) } end |
#common_inputs_outputs_output_parameters ⇒ Object
47 48 49 |
# File 'app/models/process_engine/schema/node_extension.rb', line 47 def common_inputs_outputs_output_parameters common_inputs_outputs.fetch("output_parameters", []).map{ |el| ActiveSupport::HashWithIndifferentAccess.new(el) } end |
#common_properties ⇒ Object
13 14 15 |
# File 'app/models/process_engine/schema/node_extension.rb', line 13 def common_properties common.fetch("properties", []) end |
#common_properties_kv ⇒ Object
17 18 19 20 |
# File 'app/models/process_engine/schema/node_extension.rb', line 17 def common_properties_kv kv = common_properties.each_with_object({}) {|el, hash| hash[el["name"]] = el["value"] } ActiveSupport::HashWithIndifferentAccess.new(kv) end |
#common_task_listeners ⇒ Object
51 52 53 |
# File 'app/models/process_engine/schema/node_extension.rb', line 51 def common_task_listeners common.fetch("task_listeners", []).map{ |el| ActiveSupport::HashWithIndifferentAccess.new(el) } end |
#gateway_default_flow ⇒ Object
59 60 61 |
# File 'app/models/process_engine/schema/node_extension.rb', line 59 def gateway_default_flow extension["default_flow"] end |
#start_event_initiator ⇒ Object
63 64 65 |
# File 'app/models/process_engine/schema/node_extension.rb', line 63 def start_event_initiator extension["initiator"] end |
#user_task_assignee ⇒ Object
67 68 69 |
# File 'app/models/process_engine/schema/node_extension.rb', line 67 def user_task_assignee extension["assignee"] end |
#user_task_candidate_groups ⇒ Object
75 76 77 |
# File 'app/models/process_engine/schema/node_extension.rb', line 75 def user_task_candidate_groups extension["candidate_groups"] end |
#user_task_candidate_users ⇒ Object
71 72 73 |
# File 'app/models/process_engine/schema/node_extension.rb', line 71 def user_task_candidate_users extension["candidate_users"] end |