cpee 2.1.47 → 2.1.49

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/cockpit/index.html +1 -1
  3. data/cockpit/js/instance.js +15 -11
  4. data/cockpit/js/wfadaptor.js +18 -13
  5. data/cockpit/templates/Subprocess.xml +35 -371
  6. data/cockpit/templates/Wait.xml +7 -400
  7. data/cockpit/themes/compact/rngs/call.rng +8 -0
  8. data/cockpit/themes/compact/rngs/callmanipulate.rng +8 -0
  9. data/cockpit/themes/compact/rngs/closed_loop_control.rng +2 -2
  10. data/cockpit/themes/compact/rngs/closed_loop_measuring.rng +3 -3
  11. data/cockpit/themes/compact/theme.js +15 -9
  12. data/cockpit/themes/control/rngs/call.rng +8 -0
  13. data/cockpit/themes/control/rngs/callmanipulate.rng +8 -0
  14. data/cockpit/themes/control/rngs/closed_loop_control.rng +2 -2
  15. data/cockpit/themes/control/rngs/closed_loop_measuring.rng +3 -3
  16. data/cockpit/themes/control/theme.js +17 -11
  17. data/cockpit/themes/default/rngs/call.rng +8 -0
  18. data/cockpit/themes/default/rngs/callmanipulate.rng +8 -0
  19. data/cockpit/themes/default/rngs/closed_loop_control.rng +2 -2
  20. data/cockpit/themes/default/rngs/closed_loop_measuring.rng +3 -3
  21. data/cockpit/themes/default/theme.js +15 -9
  22. data/cockpit/themes/extended/rngs/call.rng +8 -0
  23. data/cockpit/themes/extended/rngs/callmanipulate.rng +8 -0
  24. data/cockpit/themes/extended/rngs/closed_loop_control.rng +2 -2
  25. data/cockpit/themes/extended/rngs/closed_loop_measuring.rng +3 -3
  26. data/cockpit/themes/extended/theme.js +15 -9
  27. data/cockpit/themes/model/theme.js +15 -9
  28. data/cockpit/themes/packed/rngs/call.rng +8 -0
  29. data/cockpit/themes/packed/rngs/callmanipulate.rng +8 -0
  30. data/cockpit/themes/packed/rngs/closed_loop_control.rng +2 -2
  31. data/cockpit/themes/packed/rngs/closed_loop_measuring.rng +3 -3
  32. data/cockpit/themes/packed/theme.js +15 -9
  33. data/cockpit/themes/preset/rngs/call.rng +8 -0
  34. data/cockpit/themes/preset/rngs/callmanipulate.rng +8 -0
  35. data/cockpit/themes/preset/rngs/closed_loop_control.rng +2 -2
  36. data/cockpit/themes/preset/rngs/closed_loop_measuring.rng +3 -3
  37. data/cockpit/themes/preset/theme.js +15 -9
  38. data/cpee.gemspec +2 -2
  39. data/lib/cpee/implementation.rb +5 -5
  40. data/lib/cpee/persistence.rb +19 -16
  41. data/server/executionhandlers/ruby/connection.rb +23 -11
  42. data/server/executionhandlers/ruby/desc.xml +107 -0
  43. data/server/executionhandlers/ruby/dsl_to_dslx.xsl +61 -8
  44. data/server/resources/test.pdf +0 -0
  45. data/server/routing/end.pid +1 -1
  46. data/server/routing/forward-events-00.pid +1 -1
  47. data/server/routing/forward-votes.pid +1 -1
  48. data/server/routing/persist.pid +1 -1
  49. data/tools/cpee +40 -9
  50. metadata +7 -10
  51. data/cockpit/templates/Wait.xml.attrs +0 -16
  52. data/server/routing/forward-events-01.pid +0 -1
  53. data/server/routing/forward-events-02.pid +0 -1
  54. data/server/routing/forward-events-03.pid +0 -1
  55. data/server/routing/forward-events-04.pid +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 866400320b8fcaae94111a6102ed63848b81e73821a9c80c3486cd0f6c6c2cf1
4
- data.tar.gz: 652db3c2fd8ccfc07674faf956a5fadba3160a15a14a942b1055dc8fb6934784
3
+ metadata.gz: 34164853ededc651de8bd49042f1fbd395a2085897ae8f0de3d589f6896e55a4
4
+ data.tar.gz: 94547c5e075aae343ac0bcd01cd99f31907841cf0621d3623d2dc41a30aab8cb
5
5
  SHA512:
6
- metadata.gz: 18a0cb7870437abfbb4b6d4265d742684fb2925e47ddfae61ae1795a07f5cda9c35d74ec7f468951fe820949ee25ba28be86a08d0bbd6aafb958965a76e11a73
7
- data.tar.gz: 1e7697a8db9a8c57b14abc6cb466e4d6f7c52719284dcf048918341e942f590e0a27c5ab7caf5929b68cf9c91a72b2ea7cd172793c86394078f3220e041e277d
6
+ metadata.gz: 1eb722ee4a2d1721c70af726a98c1ef4dc41ce553b4332aa45eb6c2a5f96d1081f860b0c67bd90ba88f0275391e178ec063e6a77eeab54d55ed96437fc93d2aa
7
+ data.tar.gz: d144450ff15ec4c4856d41334e119f60a56c1e8d27eeafc63540cb11f01bb9dec3bcbfa9615a3d83001e24d806b514f80aa5f5b841f16799416c3f12338ce464
data/cockpit/index.html CHANGED
@@ -243,7 +243,7 @@
243
243
  <ui-behind ><a style='display:none' target='_blank' id='current-track'>T</a><a style='display:none' target='_blank' id='current-graph'>G</a></ui-behind>
244
244
  </ui-tabbar>
245
245
  <ui-content>
246
- <ui-area data-belongs-to-tab="details" id='graphcolumn'>
246
+ <ui-area data-belongs-to-tab="details" id='graphcolumn' oncontextmenu='return false'>
247
247
  <div id='graphgrid'>
248
248
  <svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:x="http://www.w3.org/1999/xlink" id='graphcanvas' width='1' height='1'></svg>
249
249
  </div>
@@ -410,7 +410,11 @@ function monitor_instance_values(type,vals) {// {{{
410
410
  }
411
411
  } else {
412
412
  let ele = $X('<' + key + ' xmlns="http://cpee.org/ns/properties/2.0"/>')
413
- $(ele).text(value)
413
+ if (typeof value === 'string' || typeof value === 'boolean' || typeof value === 'number') {
414
+ $(ele).text(value)
415
+ } else {
416
+ $(ele).text(JSON.stringify(value))
417
+ }
414
418
  $(de).find(' > dataelements').append(ele)
415
419
  }
416
420
  });
@@ -546,24 +550,24 @@ function adaptor_init(url,theme,dslx) { //{{{
546
550
  });
547
551
  $('#graphgrid').css({
548
552
  'grid-template-rows': (shift/2) + 'px repeat(' + max.row + ', 1fr) ' + (shift/2) + 'px',
549
- 'grid-template-columns': 'max-content' + (tcolumns.length > 0 ? ' repeat(' + tcolumns.length.toString() + ',max-content)' : '') + ' auto'
553
+ 'grid-template-columns': 'max-content' + (tcolumns.length > 0 ? ' repeat(' + tcolumns.length.toString() + ',max-content)' : '') + ' auto'
550
554
  });
551
555
  for (var i = 0; i < max.row; i++) {
552
- for (var j =0; j < tcolumns.length; j++) {
556
+ for (var j = 0; j < tcolumns.length; j++) {
553
557
  if (tlabels[i+1] != undefined && tlabels[i+1][j] != undefined && tlabels[i+1][j].label != undefined && tlabels[i+1][j].label != '') {
554
558
  var col = tlabels[i+1][j];
555
- var ele = $('<div class="graphlabel ' + (i % 2 == 0 ? 'odd' : 'even') + '" element-type="' + col.type + '" element-id="' + col.id + '" style="grid-column: ' + (j+2) + '; grid-row: ' + (i+2) + '"><span>' + col.label + '</span></div>');
556
- graphrealization.illustrator.draw.bind_event(ele,col.type,false);
559
+ var ele = $('<div element-row="' + i + '" class="graphlabel ' + (i % 2 == 0 ? 'odd' : 'even') + '" element-type="' + col.type + '" element-id="' + col.id + '" style="grid-column: ' + (j+2) + '; grid-row: ' + (i+2) + '"><span>' + col.label + '</span></div>');
560
+ graphrealization.illustrator.draw.bind_event(ele, col.type, false);
557
561
  $('#graphgrid').append(ele);
558
562
  } else {
559
563
  if (tcolumncount[tcolumns[j]] != 0) {
560
- var ele = $('<div class="graphempty ' + (i % 2 == 0 ? 'odd' : 'even') + '" style="grid-column: ' + (j+2) + '; grid-row: ' + (i+2) + '; padding-bottom: ' + shift + 'px">&#032;</div>');
564
+ var ele = $('<div element-row="' + i + '" class="graphempty ' + (i % 2 == 0 ? 'odd' : 'even') + '" style="grid-column: ' + (j+2) + '; grid-row: ' + (i+2) + '; padding-bottom: ' + shift + 'px">&#032;</div>');
561
565
  $('#graphgrid').append(ele);
562
566
  }
563
567
  }
564
568
  }
565
569
  var j = tcolumns.length;
566
- var ele = $('<div class="graphlast ' + (i % 2 == 0 ? 'odd' : 'even') + '" style="grid-column: ' + (j+2) + '; grid-row: ' + (i+2) + '; padding-bottom: ' + shift + 'px">&#032;</div>');
570
+ var ele = $('<div element-row="' + i + '" class="graphlast ' + (i % 2 == 0 ? 'odd' : 'even') + '" style="grid-column: ' + (j+2) + '; grid-row: ' + (i+2) + '; padding-bottom: ' + shift + 'px">&#032;</div>');
567
571
  $('#graphgrid').append(ele);
568
572
  }
569
573
  };
@@ -758,9 +762,9 @@ function monitor_instance_state_change(notification) { //{{{
758
762
  if (notification == "stopped") {
759
763
  monitor_instance_pos();
760
764
  }
761
- if (notification == "running") {
762
- format_visual_clear();
763
- }
765
+ // if (notification == "running") {
766
+ // format_visual_clear();
767
+ // }
764
768
 
765
769
  var but = "";
766
770
  if (notification == "ready" || notification == "stopped") {
@@ -1459,7 +1463,7 @@ function ui_pos(e,bl) {
1459
1463
  }
1460
1464
  function del_ui_pos(e) {
1461
1465
  ui_pos(e,function(coll){
1462
- coll.splice(coll.indexOf($(e).attr('id')),1);
1466
+ coll.splice(coll.findIndex((ele)=>ele[0] == $(e).attr('id')),1);
1463
1467
  return coll;
1464
1468
  });
1465
1469
  }
@@ -217,9 +217,13 @@ function WfIllustrator(wf_adaptor) { // View {{{
217
217
  } // }}}
218
218
  // }}}
219
219
  // Helper Functions {{{
220
+ var get_y = this.draw.get_y = function (row) { // {{{
221
+ return { y: row * self.height - self.height, height_shift: self.height_shift};
222
+ } // }}}
223
+
220
224
  var draw_stripe = this.draw.draw_stripe = function (row, maxcol) { // {{{
221
225
  if (maxcol < 1) maxcol = 1;
222
- var g = $X('<rect class="stripe ' + (row % 2 == 0 ? 'even' : 'odd') + '" x="0" y="' + String(row*self.height+self.height_shift/2) + '" width="' + (self.width * maxcol + self.width - self.width_shift) + '" height="' + (self.height) + '" xmlns="http://www.w3.org/2000/svg"></rect>');
226
+ var g = $X('<rect element-row="' + row + '" class="stripe ' + (row % 2 == 0 ? 'even' : 'odd') + '" x="0" y="' + String(row*self.height+self.height_shift/2) + '" width="' + (self.width * maxcol + self.width - self.width_shift) + '" height="' + (self.height) + '" xmlns="http://www.w3.org/2000/svg"></rect>');
223
227
  self.svg.container.prepend(g);
224
228
  return g;
225
229
  } // }}}
@@ -366,16 +370,16 @@ function WfDescription(wf_adaptor, wf_illustrator) { // Model {{{
366
370
 
367
371
  // Set Labels //{{{
368
372
  this.set_labels = function(graph) {
369
- if (illustrator.compact == false) {
370
- adaptor.draw_labels(graph.max,labels,illustrator.height_shift,illustrator.striped == true ? true : false);
371
- } else {
372
- adaptor.draw_labels(graph.max,[],illustrator.height_shift,false);
373
- }
374
373
  if (illustrator.striped == true && illustrator.compact == false) {
375
374
  for (var i=0; i < graph.max.row; i++) {
376
375
  illustrator.draw.draw_stripe(i,graph.max.col);
377
376
  }
378
377
  }
378
+ if (illustrator.compact == false) {
379
+ adaptor.draw_labels(graph.max,labels,illustrator.height_shift,illustrator.striped == true ? true : false);
380
+ } else {
381
+ adaptor.draw_labels(graph.max,[],illustrator.height_shift,false);
382
+ }
379
383
  if (illustrator.compact == false) {
380
384
  if (labels.length > 0) {
381
385
  _.each(labels,function(a,key) {
@@ -402,9 +406,9 @@ function WfDescription(wf_adaptor, wf_illustrator) { // Model {{{
402
406
  labels = [];
403
407
  illustrator.clear();
404
408
  var graph = parse(description.children('description').get(0), {'row':0,'col':0,final:false,wide:false});
405
- self.set_labels(graph);
406
- // set labels
407
409
  illustrator.set_svg(graph);
410
+ // set labels
411
+ self.set_labels(graph);
408
412
  } // }}}
409
413
  var gd = this.get_description = function() { // public {{{
410
414
  var serxml = $(description.get(0).documentElement).clone(true);
@@ -454,9 +458,9 @@ function WfDescription(wf_adaptor, wf_illustrator) { // Model {{{
454
458
  labels = [];
455
459
  illustrator.clear();
456
460
  var graph = parse(description.children('description').get(0), {'row':0,'col':0});
457
- self.set_labels(graph);
458
- // set labels
459
461
  illustrator.set_svg(graph);
462
+ // set labels
463
+ self.set_labels(graph);
460
464
  doit(self);
461
465
  }
462
466
  var update = this.update = function(svgid) { // {{{
@@ -465,8 +469,8 @@ function WfDescription(wf_adaptor, wf_illustrator) { // Model {{{
465
469
  labels = [];
466
470
  illustrator.clear();
467
471
  var graph = parse(description.children('description').get(0), {'row':0,'col':0});
468
- self.set_labels(graph);
469
472
  illustrator.set_svg(graph);
473
+ self.set_labels(graph);
470
474
  }
471
475
 
472
476
  var newn = $('*[new=true]',description);
@@ -563,7 +567,8 @@ function WfDescription(wf_adaptor, wf_illustrator) { // Model {{{
563
567
  $(root).attr('svg-subtype','description');
564
568
  group.attr('element-id','group-description');
565
569
  if (illustrator.elements[sname].label) {
566
- labels.push({row: pos.row, element_id: 'start', tname: 'start', label: illustrator.elements[sname].label(root)});
570
+ // javascript object spread syntax is my new weird crush - the JS designers must be serious people
571
+ labels.push({...{row: pos.row, element_id: 'start', tname: 'start', label: illustrator.elements[sname].label(root)},...illustrator.draw.get_y(pos.row)});
567
572
  }
568
573
  illustrator.draw.draw_symbol(sname, 'description', 'START', pos.row, pos.col, group);
569
574
  } // }}}
@@ -675,7 +680,7 @@ function WfDescription(wf_adaptor, wf_illustrator) { // Model {{{
675
680
  if (lab && lab[0] && lab[0].value && lab[0].column == 'Label' && lab[0].value != '') {
676
681
  $(context).attr('svg-label', lab[0].value);
677
682
  }
678
- labels.push({row: pos.row, element_id: $(context).attr('svg-id'), tname: tname, label: lab});
683
+ labels.push({...{row: pos.row, element_id: $(context).attr('svg-id'), tname: tname, label: lab},...illustrator.draw.get_y(pos.row)});
679
684
  }
680
685
  } //}}}
681
686
  var draw_position = function(tname,pos,prev,block,group,endnodes,context,second) { // private {{{
@@ -3,17 +3,8 @@
3
3
  <executionhandler>ruby</executionhandler>
4
4
  <dataelements/>
5
5
  <endpoints>
6
- <machine>machine</machine>
7
- <timeout>https://cpee.org/services/timeout.php</timeout>
8
- <sensor>sensor</sensor>
9
6
  <subprocess>https-post://cpee.org/flow/start/url/</subprocess>
10
- <human>human</human>
11
- <plc>plc</plc>
12
- <robot>robot</robot>
13
- <robot_subprocess>robot_subprocess</robot_subprocess>
14
- <send>send</send>
15
- <receive>receive</receive>
16
- <wait>wait</wait>
7
+ <timeout>https://cpee.org/services/timeout.php</timeout>
17
8
  </endpoints>
18
9
  <attributes>
19
10
  <info>Subprocess</info>
@@ -30,278 +21,24 @@
30
21
  </attributes>
31
22
  <description>
32
23
  <description xmlns="http://cpee.org/ns/description/1.0">
33
- <manipulate id="a2" label="initialize values">data.new_records = rand(0..1)
34
- data.new_returns = rand(0..1)
35
- data.advised = rand(0..1)
36
- data.completed = rand(0..1)
37
- data.hour = rand(0..24)</manipulate>
38
- <call id="a1" endpoint="timeout">
39
- <parameters>
40
- <label>weekday morning</label>
41
- <method>:post</method>
42
- <arguments>
43
- <timeout/>
44
- </arguments>
45
- </parameters>
46
- <annotations>
47
- <_timing>
48
- <_timing_weight/>
49
- <_timing_avg/>
50
- <explanations/>
51
- </_timing>
52
- <_context_data_analysis>
53
- <probes/>
54
- <ips/>
55
- </_context_data_analysis>
56
- <report>
57
- <url/>
58
- </report>
59
- <_notes>
60
- <_notes_general/>
61
- </_notes>
62
- </annotations>
63
- <documentation>
64
- <input/>
65
- <output/>
66
- <implementation>
67
- <description/>
68
- </implementation>
69
- <code>
70
- <description/>
71
- </code>
72
- </documentation>
73
- </call>
74
- <call id="a3" endpoint="timeout">
75
- <parameters>
76
- <label>back-up database</label>
77
- <method>:post</method>
78
- <arguments>
79
- <timeout/>
80
- </arguments>
81
- </parameters>
82
- <annotations>
83
- <_timing>
84
- <_timing_weight/>
85
- <_timing_avg/>
86
- <explanations/>
87
- </_timing>
88
- <_context_data_analysis>
89
- <probes/>
90
- <ips/>
91
- </_context_data_analysis>
92
- <report>
93
- <url/>
94
- </report>
95
- <_notes>
96
- <_notes_general/>
97
- </_notes>
98
- </annotations>
99
- <documentation>
100
- <input/>
101
- <output/>
102
- <implementation>
103
- <description/>
104
- </implementation>
105
- <code>
106
- <description/>
107
- </code>
108
- </documentation>
109
- </call>
110
- <choose mode="exclusive">
111
- <alternative condition="data.new_records == 1">
112
- <_probability>
113
- <_probability_min/>
114
- <_probability_max/>
115
- <_probability_avg/>
116
- </_probability>
117
- </alternative>
118
- <otherwise>
119
- <terminate/>
120
- </otherwise>
121
- </choose>
122
- <choose mode="exclusive">
123
- <alternative condition="data.new_returns == 1">
124
- <_probability>
125
- <_probability_min/>
126
- <_probability_max/>
127
- <_probability_avg/>
128
- </_probability>
129
- <call id="a4" endpoint="timeout">
130
- <parameters>
131
- <label>register defaulting accounts and customers</label>
132
- <method>:post</method>
133
- <arguments>
134
- <timeout/>
135
- </arguments>
136
- </parameters>
137
- <annotations>
138
- <_timing>
139
- <_timing_weight/>
140
- <_timing_avg/>
141
- <explanations/>
142
- </_timing>
143
- <_context_data_analysis>
144
- <probes/>
145
- <ips/>
146
- </_context_data_analysis>
147
- <report>
148
- <url/>
149
- </report>
150
- <_notes>
151
- <_notes_general/>
152
- </_notes>
153
- </annotations>
154
- <documentation>
155
- <input/>
156
- <output/>
157
- <implementation>
158
- <description/>
159
- </implementation>
160
- <code>
161
- <description/>
162
- </code>
163
- </documentation>
164
- </call>
165
- <choose mode="exclusive">
166
- <alternative condition="data.advised == 0">
167
- <call id="a12" endpoint="timeout">
168
- <parameters>
169
- <label>produce table of defaulting accounts</label>
170
- <method>:post</method>
171
- <arguments>
172
- <timeout/>
173
- </arguments>
174
- </parameters>
175
- <annotations>
176
- <_timing>
177
- <_timing_weight/>
178
- <_timing_avg/>
179
- <explanations/>
180
- </_timing>
181
- <_context_data_analysis>
182
- <probes/>
183
- <ips/>
184
- </_context_data_analysis>
185
- <report>
186
- <url/>
187
- </report>
188
- <_notes>
189
- <_notes_general/>
190
- </_notes>
191
- </annotations>
192
- <documentation>
193
- <input/>
194
- <output/>
195
- <implementation>
196
- <description/>
197
- </implementation>
198
- </documentation>
199
- </call>
200
- <call id="a13" endpoint="timeout">
201
- <parameters>
202
- <label>send to account management</label>
203
- <method>:post</method>
204
- <arguments>
205
- <timeout/>
206
- </arguments>
207
- </parameters>
208
- <annotations>
209
- <_timing>
210
- <_timing_weight/>
211
- <_timing_avg/>
212
- <explanations/>
213
- </_timing>
214
- <_context_data_analysis>
215
- <probes/>
216
- <ips/>
217
- </_context_data_analysis>
218
- <report>
219
- <url/>
220
- </report>
221
- <_notes>
222
- <_notes_general/>
223
- </_notes>
224
- </annotations>
225
- <documentation>
226
- <input/>
227
- <output/>
228
- <implementation>
229
- <description/>
230
- </implementation>
231
- </documentation>
232
- </call>
233
- <_probability>
234
- <_probability_min/>
235
- <_probability_max/>
236
- <_probability_avg/>
237
- </_probability>
238
- </alternative>
239
- <otherwise/>
240
- </choose>
241
- </alternative>
242
- <otherwise/>
243
- </choose>
244
- <choose mode="exclusive">
245
- <alternative condition="data.completed == 1 &amp;&amp; data.hour &lt; 14:30">
246
- <_probability>
247
- <_probability_min/>
248
- <_probability_max/>
249
- <_probability_avg/>
250
- </_probability>
251
- </alternative>
252
- <otherwise>
253
- <call id="a7" endpoint="timeout">
254
- <parameters>
255
- <label>send alert to supervisor</label>
256
- <method>:post</method>
257
- <arguments>
258
- <timeout/>
259
- </arguments>
260
- </parameters>
261
- <annotations>
262
- <_timing>
263
- <_timing_weight/>
264
- <_timing_avg/>
265
- <explanations/>
266
- </_timing>
267
- <_context_data_analysis>
268
- <probes/>
269
- <ips/>
270
- </_context_data_analysis>
271
- <report>
272
- <url/>
273
- </report>
274
- <_notes>
275
- <_notes_general/>
276
- </_notes>
277
- </annotations>
278
- <documentation>
279
- <input/>
280
- <output/>
281
- <implementation>
282
- <description/>
283
- </implementation>
284
- <code>
285
- <description/>
286
- </code>
287
- </documentation>
288
- </call>
289
- </otherwise>
290
- </choose>
291
- <call id="a8" endpoint="timeout">
24
+ <call id="a2" endpoint="timeout">
292
25
  <parameters>
293
- <label>new defaulting account report completed</label>
26
+ <label>Wait</label>
294
27
  <method>:post</method>
295
28
  <arguments>
296
- <timeout/>
29
+ <timeout>2</timeout>
297
30
  </arguments>
298
31
  </parameters>
299
32
  <annotations>
33
+ <_generic/>
300
34
  <_timing>
301
35
  <_timing_weight/>
302
36
  <_timing_avg/>
303
37
  <explanations/>
304
38
  </_timing>
39
+ <_shifting>
40
+ <_shifting_type>Duration</_shifting_type>
41
+ </_shifting>
305
42
  <_context_data_analysis>
306
43
  <probes/>
307
44
  <ips/>
@@ -319,25 +56,38 @@ data.hour = rand(0..24)</manipulate>
319
56
  <implementation>
320
57
  <description/>
321
58
  </implementation>
322
- <code>
323
- <description/>
324
- </code>
325
59
  </documentation>
326
60
  </call>
327
- <call id="a9" endpoint="timeout">
61
+ <call id="a1" endpoint="subprocess">
328
62
  <parameters>
329
- <label>check the CRM system</label>
330
- <method>:post</method>
63
+ <label>Create Sub</label>
331
64
  <arguments>
332
- <timeout/>
65
+ <behavior>wait_running</behavior>
66
+ <url>https://cpee.org/hub/server/Templates.dir/Wait.xml</url>
67
+ <init>
68
+ <b>!rand(1..17)</b>
69
+ </init>
70
+ <endpoints/>
71
+ <attributes/>
72
+ <customization/>
333
73
  </arguments>
334
74
  </parameters>
75
+ <code>
76
+ <prepare/>
77
+ <finalize output="result">data.res = result</finalize>
78
+ <update output="result"/>
79
+ <rescue output="result"/>
80
+ </code>
335
81
  <annotations>
82
+ <_generic/>
336
83
  <_timing>
337
84
  <_timing_weight/>
338
85
  <_timing_avg/>
339
86
  <explanations/>
340
87
  </_timing>
88
+ <_shifting>
89
+ <_shifting_type>Duration</_shifting_type>
90
+ </_shifting>
341
91
  <_context_data_analysis>
342
92
  <probes/>
343
93
  <ips/>
@@ -360,99 +110,6 @@ data.hour = rand(0..24)</manipulate>
360
110
  </code>
361
111
  </documentation>
362
112
  </call>
363
- <choose mode="exclusive">
364
- <alternative condition="data.new_returns == 1">
365
- <_probability>
366
- <_probability_min/>
367
- <_probability_max/>
368
- <_probability_avg/>
369
- </_probability>
370
- <call id="a10" endpoint="timeout">
371
- <parameters>
372
- <label>reconcile with existing account defulters table</label>
373
- <method>:post</method>
374
- <arguments>
375
- <timeout/>
376
- </arguments>
377
- </parameters>
378
- <annotations>
379
- <_timing>
380
- <_timing_weight/>
381
- <_timing_avg/>
382
- <explanations/>
383
- </_timing>
384
- <_context_data_analysis>
385
- <probes/>
386
- <ips/>
387
- </_context_data_analysis>
388
- <report>
389
- <url/>
390
- </report>
391
- <_notes>
392
- <_notes_general/>
393
- </_notes>
394
- </annotations>
395
- <documentation>
396
- <input/>
397
- <output/>
398
- <implementation>
399
- <description/>
400
- </implementation>
401
- <code>
402
- <description/>
403
- </code>
404
- </documentation>
405
- </call>
406
- </alternative>
407
- <otherwise/>
408
- </choose>
409
- <choose mode="exclusive">
410
- <alternative condition="data.hour &lt; 16">
411
- <_probability>
412
- <_probability_min/>
413
- <_probability_max/>
414
- <_probability_avg/>
415
- </_probability>
416
- </alternative>
417
- <otherwise>
418
- <call id="a11" endpoint="timeout">
419
- <parameters>
420
- <label>supervisor sends message</label>
421
- <method>:post</method>
422
- <arguments>
423
- <timeout/>
424
- </arguments>
425
- </parameters>
426
- <annotations>
427
- <_timing>
428
- <_timing_weight/>
429
- <_timing_avg/>
430
- <explanations/>
431
- </_timing>
432
- <_context_data_analysis>
433
- <probes/>
434
- <ips/>
435
- </_context_data_analysis>
436
- <report>
437
- <url/>
438
- </report>
439
- <_notes>
440
- <_notes_general/>
441
- </_notes>
442
- </annotations>
443
- <documentation>
444
- <input/>
445
- <output/>
446
- <implementation>
447
- <description/>
448
- </implementation>
449
- <code>
450
- <description/>
451
- </code>
452
- </documentation>
453
- </call>
454
- </otherwise>
455
- </choose>
456
113
  </description>
457
114
  </description>
458
115
  <transformation>
@@ -460,4 +117,11 @@ data.hour = rand(0..24)</manipulate>
460
117
  <dataelements type="none"/>
461
118
  <endpoints type="none"/>
462
119
  </transformation>
120
+ <subscriptions xmlns="http://riddl.org/ns/common-patterns/notifications-producer/2.0">
121
+ <subscription id="_karo" url="https://lehre.bpm.in.tum.de/ports/8000/">
122
+ <topic id="activity">
123
+ <event>calling</event>
124
+ </topic>
125
+ </subscription>
126
+ </subscriptions>
463
127
  </testset>