cpee 2.1.70 → 2.1.73

Sign up to get free protection for your applications and to get access to all the features.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. data/cockpit/css/wfadaptor.css +1 -1
  3. data/cockpit/js/instance.js +53 -23
  4. data/cockpit/js/modifiers.js +3 -0
  5. data/cockpit/templates/ML-pipe-multi.xml +635 -0
  6. data/cockpit/templates/Track Test Local.xml +19 -13
  7. data/cockpit/themes/base.js +14 -5
  8. data/cockpit/themes/reduced/rngs/alternative.rng +25 -0
  9. data/cockpit/themes/reduced/rngs/call.rng +228 -0
  10. data/cockpit/themes/reduced/rngs/callmanipulate.rng +257 -0
  11. data/cockpit/themes/reduced/rngs/choose.rng +14 -0
  12. data/cockpit/themes/reduced/rngs/closed_loop.rng +62 -0
  13. data/cockpit/themes/reduced/rngs/closed_loop_cancel.rng +5 -0
  14. data/cockpit/themes/reduced/rngs/closed_loop_control.rng +31 -0
  15. data/cockpit/themes/reduced/rngs/closed_loop_measuring.rng +12 -0
  16. data/cockpit/themes/reduced/rngs/critical.rng +5 -0
  17. data/cockpit/themes/reduced/rngs/escape.rng +1 -0
  18. data/cockpit/themes/reduced/rngs/group.rng +3 -0
  19. data/cockpit/themes/reduced/rngs/loop.rng +22 -0
  20. data/cockpit/themes/reduced/rngs/manipulate.rng +9 -0
  21. data/cockpit/themes/reduced/rngs/otherwise.rng +22 -0
  22. data/cockpit/themes/reduced/rngs/parallel.rng +27 -0
  23. data/cockpit/themes/reduced/rngs/parallel_branch.rng +2 -0
  24. data/cockpit/themes/reduced/rngs/scripts.rng +23 -0
  25. data/cockpit/themes/reduced/rngs/start.rng +131 -0
  26. data/cockpit/themes/reduced/rngs/stop.rng +5 -0
  27. data/cockpit/themes/reduced/rngs/terminate.rng +1 -0
  28. data/cockpit/themes/reduced/symbols/alternative.svg +5 -0
  29. data/cockpit/themes/reduced/symbols/arrow.svg +3 -0
  30. data/cockpit/themes/reduced/symbols/call.svg +6 -0
  31. data/cockpit/themes/reduced/symbols/call_sensor.svg +9 -0
  32. data/cockpit/themes/reduced/symbols/callmanipulate.svg +8 -0
  33. data/cockpit/themes/reduced/symbols/callmanipulate_sensor.svg +11 -0
  34. data/cockpit/themes/reduced/symbols/choose.svg +5 -0
  35. data/cockpit/themes/reduced/symbols/choose_exclusive.svg +5 -0
  36. data/cockpit/themes/reduced/symbols/choose_inclusive.svg +4 -0
  37. data/cockpit/themes/reduced/symbols/closed_loop.svg +5 -0
  38. data/cockpit/themes/reduced/symbols/closed_loop_cancel.svg +5 -0
  39. data/cockpit/themes/reduced/symbols/closed_loop_control.svg +5 -0
  40. data/cockpit/themes/reduced/symbols/closed_loop_measuring.svg +6 -0
  41. data/cockpit/themes/reduced/symbols/complex.svg +8 -0
  42. data/cockpit/themes/reduced/symbols/critical.svg +4 -0
  43. data/cockpit/themes/reduced/symbols/delete.svg +4 -0
  44. data/cockpit/themes/reduced/symbols/end.svg +3 -0
  45. data/cockpit/themes/reduced/symbols/escape.svg +5 -0
  46. data/cockpit/themes/reduced/symbols/event_end.svg +3 -0
  47. data/cockpit/themes/reduced/symbols/loop.svg +5 -0
  48. data/cockpit/themes/reduced/symbols/manipulate.svg +4 -0
  49. data/cockpit/themes/reduced/symbols/otherwise.svg +5 -0
  50. data/cockpit/themes/reduced/symbols/parallel.svg +5 -0
  51. data/cockpit/themes/reduced/symbols/parallel_branch.svg +5 -0
  52. data/cockpit/themes/reduced/symbols/parallel_branch_compact.svg +4 -0
  53. data/cockpit/themes/reduced/symbols/parallel_branch_event.svg +14 -0
  54. data/cockpit/themes/reduced/symbols/parallel_branch_normal.svg +5 -0
  55. data/cockpit/themes/reduced/symbols/parallel_eventbased_exclusive.svg +9 -0
  56. data/cockpit/themes/reduced/symbols/parallel_eventbased_parallel.svg +8 -0
  57. data/cockpit/themes/reduced/symbols/scripts.svg +4 -0
  58. data/cockpit/themes/reduced/symbols/start.svg +3 -0
  59. data/cockpit/themes/reduced/symbols/start_event.svg +5 -0
  60. data/cockpit/themes/reduced/symbols/stop.svg +5 -0
  61. data/cockpit/themes/reduced/symbols/terminate.svg +4 -0
  62. data/cockpit/themes/reduced/theme.js +11 -0
  63. data/cpee.gemspec +2 -2
  64. data/lib/cpee/implementation_callbacks.rb +15 -1
  65. data/lib/cpee/implementation_properties.rb +14 -1
  66. data/lib/cpee/message.rb +1 -1
  67. data/server/executionhandlers/{rust → eval}/backend/opts.yaml +1 -1
  68. data/server/executionhandlers/{rubyext → eval}/connection.rb +37 -106
  69. data/server/executionhandlers/{rubyext → eval}/controller.rb +11 -7
  70. data/server/executionhandlers/{rust → eval}/execution.rb +16 -18
  71. data/server/executionhandlers/ruby/backend/opts.yaml +2 -0
  72. data/server/executionhandlers/ruby/connection.rb +154 -57
  73. data/server/executionhandlers/ruby/controller.rb +17 -1
  74. data/server/executionhandlers/ruby/dsl_to_dslx.xsl +29 -29
  75. data/server/executionhandlers/ruby/execution.rb +14 -13
  76. data/server/routing/end.pid +1 -1
  77. data/server/routing/forward-events-00.pid +1 -1
  78. data/server/routing/forward-votes.pid +1 -1
  79. data/server/routing/persist.pid +1 -1
  80. metadata +67 -16
  81. data/cockpit/templates/Coopis 2010 Ext.xml +0 -193
  82. data/server/executionhandlers/rubyext/backend/opts.yaml +0 -8
  83. data/server/executionhandlers/rubyext/execution.rb +0 -84
  84. data/server/executionhandlers/rust/backend/README.md +0 -17
  85. data/server/executionhandlers/rust/backend/compile.sh +0 -5
  86. /data/server/executionhandlers/{rubyext → eval}/backend/README.md +0 -0
  87. /data/server/executionhandlers/{rubyext → eval}/backend/instance.template +0 -0
  88. /data/server/executionhandlers/{rubyext → eval}/backend/run +0 -0
  89. /data/server/executionhandlers/{rubyext → eval}/dsl_to_dslx.xsl +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 41f311fdc70aec9386640a09a7331abdd3279d08e532de6a74f019a89d413cd8
4
- data.tar.gz: 479b16db900e1270c2124d5b413d3623813bc4b37d8727a8bbce397ea1207953
3
+ metadata.gz: c21127d24cf9f2a171afb51a060e0ebe7670733f57b60ecc726a4680092c6968
4
+ data.tar.gz: 5c412f66e52ca5e982cb7e1c36c4ee7f3c92287d0d025445d5aa6f0f0a07c0d6
5
5
  SHA512:
6
- metadata.gz: 0c6f6a22e4e5d76474b160f780b99a4f4e6355259174cf31f99704512e88863dcc0ee9f17a3c037a0fc44a98730ae8f1f2eff8a749de774eb87f409ecb286b11
7
- data.tar.gz: 7b70f1adc92d339b829ef8285fafb7836946d73c6b51e6cf16f0a278ba84cae0a6191897dcdbf3caf61bcd2960643da2a7cbb1b36260ef19a29639659ea3f25b
6
+ metadata.gz: 77f4006dd5a11a5d7c84723544b9e10b0080c9e71af653914b0f2442d8996300c7612ba7f4f7289117fef5ee48241ed1b15a7d9d784d4c123805afe86934c1fd
7
+ data.tar.gz: 6ebd11566d148d05ccfdf3c02a0e404f6b76dbdda37d1ffc38b48feefb4b6ab8a7321a8e9c0750a08a371e865fa9290ba1c1a7db99875bc2c5a039adbb610f04
@@ -18,7 +18,7 @@
18
18
  --wfadaptor-exec-passive: #729fcf;
19
19
  --wfadaptor-exec-active: #ef2929;
20
20
  --wfadaptor-exec-active-text: #cc0000;
21
- --wfadaptor-exec-vote: #8ae234;
21
+ --wfadaptor-exec-vote: #8de5bcff;
22
22
  --wfadaptor-exec-vote-text: #73d216;
23
23
  --wfadaptor-highlight: #0081c7;
24
24
  --wfadaptor-base: #000000;
@@ -7,6 +7,11 @@ var loading = false;
7
7
  var subscription;
8
8
  var subscription_state = 'less';
9
9
  var graph_changed = new Event("graph:changed", {"bubbles":true, "cancelable":false});
10
+ var graph_theme = null;
11
+ var graph_position = null;
12
+ var graph_highlight = null;
13
+ var graph_highlight_tasks = []
14
+ var graph_highlight_color = null;
10
15
  var model_loaded = new Event("model:loaded", {"bubbles":true, "cancelable":false});
11
16
  var save = {};
12
17
  save['endpoints'] = undefined;
@@ -23,7 +28,6 @@ function global_init() {
23
28
  save['state']= undefined;
24
29
  save['dsl'] = undefined;
25
30
  save['activity_red_states'] = {}
26
- save['activity_blue_states'] = {}
27
31
  save['graph'] = undefined;
28
32
  save['graph_theme'] = undefined;
29
33
  save['graph_adaptor'] = undefined;
@@ -125,6 +129,17 @@ function cockpit() { //{{{
125
129
  uidash_toggle_vis_tab($('#instance'));
126
130
  uidash_toggle_vis_tab($('#parameters'));
127
131
  }
132
+ if (q.theme) { graph_theme = q.theme; }
133
+ if (q.position) { graph_position = q.position == 'false' ? 'false' : 'true'; }
134
+ if (q.highlight) {
135
+ graph_highlight = q.highlight.match(/((a\d+,)+)([a-z0-9]{6,8})$/);
136
+ if (graph_highlight.length > 0) {
137
+ graph_highlight_color = graph_highlight[3];
138
+ graph_highlight_tasks = graph_highlight[1].split(',');
139
+ graph_highlight_tasks.pop();
140
+ graph_highlight = graph_highlight[0];
141
+ }
142
+ }
128
143
  if (q.monitor && q.load) {
129
144
  if (q.load.match(/https?:\/\//)) {
130
145
  $('body').attr('load-testset',q.load);
@@ -291,7 +306,7 @@ async function sse() { //{{{
291
306
  } else {
292
307
  monitor_instance_values("attributes");
293
308
  }
294
- if (save['graph_theme'] != data.content.values.theme) {
309
+ if (typeof data.content.values.theme !== "undefined" && save['graph_theme'] != data.content.values.theme) {
295
310
  monitor_graph_change(true);
296
311
  }
297
312
  break;
@@ -344,6 +359,8 @@ function monitor_instance(cin,rep,load,exec) {// {{{
344
359
  $('#parameters ui-content ui-area > button').attr('disabled','disabled');
345
360
  $('#dat_details').empty();
346
361
 
362
+ $('#modifiers > div').remove();
363
+
347
364
  url = $("body").attr('current-instance');
348
365
 
349
366
  $.ajax({
@@ -371,7 +388,7 @@ function monitor_instance(cin,rep,load,exec) {// {{{
371
388
  $("#current-track").show();
372
389
  $("#current-track").attr('href','track.html?monitor=' + url);
373
390
  var q = $.parseQuerySimple();
374
- history.replaceState({}, '', '?' + (q.min || q.min=="" ? "min&" : "") + 'monitor='+url);
391
+ history.replaceState({}, '', '?' + (graph_position ? "position=" + graph_position + "&" : "") + (graph_highlight ? "highlight=" + graph_highlight + "&" : "") + (graph_theme ? "theme=" + graph_theme + "&" : "") + (q.min || q.min=="" ? "min&" : "") + 'monitor='+url);
375
392
 
376
393
  // Change url to return to current instance when reloading (because new subscription is made)
377
394
  $("input[name=votecontinue]").prop( "checked", false );
@@ -552,6 +569,7 @@ function adaptor_update() { //{{{
552
569
  function adaptor_init(url,theme,dslx) { //{{{
553
570
  // while inside and svgs are reloaded, do nothing here
554
571
  if (suspended_redrawing) { return; }
572
+ if (graph_theme) { theme = graph_theme; }
555
573
  if (save['graph_theme'] != theme) {
556
574
  // while inside and svgs are reloaded, do nothing here
557
575
  suspended_redrawing = true;
@@ -559,6 +577,18 @@ function adaptor_init(url,theme,dslx) { //{{{
559
577
  save['graph_adaptor'] = new WfAdaptor($('body').data('theme-base') + '/' + theme + '/theme.js',function(graphrealization){
560
578
  manifestation.endpoints = save.endpoints_list;
561
579
  graphrealization.draw_labels = function(max,labels,dimensions,striped) {
580
+ // highlight
581
+
582
+ if (graph_highlight) {
583
+ graph_highlight_tasks.forEach((ele) => {
584
+ let er = $('g[element-id=' + ele + ']').attr('element-row');
585
+ styletext = 'svg rect[element-row="'+ er + '"], div.graphlast[element-row="'+ er + '"] { fill: #' + graph_highlight_color + ' !important; background-color: #' + graph_highlight_color + ' !important; } ';
586
+ $('head').append('<style type="text/css">' + styletext + '</style>');
587
+ scroll_into_view(ele);
588
+ })
589
+ }
590
+
591
+ // labels
562
592
  $('#graphcanvas').css('grid-row', '1/span ' + (max.row + 2));
563
593
  if (striped == true) {
564
594
  if (!$('#graphgrid').hasClass('striped')) {
@@ -782,6 +812,7 @@ function adaptor_init(url,theme,dslx) { //{{{
782
812
  }
783
813
  };
784
814
  adaptor_update();
815
+
785
816
  monitor_instance_pos();
786
817
  $('#dat_details').empty();
787
818
 
@@ -857,6 +888,12 @@ function monitor_instance_state() {// {{{
857
888
  }// }}}
858
889
 
859
890
  function monitor_instance_pos() {// {{{
891
+ if (graph_position && graph_position == 'false') {
892
+ save['instance_pos'] = [];
893
+ format_visual_clear();
894
+ format_instance_pos();
895
+ return;
896
+ };
860
897
  var url = $('body').attr('current-instance');
861
898
  $.ajax({
862
899
  type: "GET",
@@ -885,33 +922,24 @@ function monitor_instance_running(content,event) {// {{{
885
922
  format_visual_remove(content.activity,"active");
886
923
  }
887
924
  save['activity_red_states'][content['activity-uuid']] = true
888
- setTimeout(() => {delete save['activity_red_states'][content['activity-uuid']]},5000);
925
+ setTimeout(() => {delete save['activity_red_states'][content['activity-uuid']]},1);
889
926
  }
890
927
  } // }}}
891
928
  function monitor_instance_pos_change(content) {// {{{
929
+ if (graph_position && graph_position == 'false') { return; }
892
930
  if (content['at']) {
893
931
  $.each(content['at'],function(a,b){
894
- if (!save['activity_blue_states'][b.uuid]) {
895
- save['activity_blue_states'][b.uuid] = true
896
- format_visual_add(b.position,"passive");
897
- }
932
+ format_visual_add(b.position,"passive",false);
898
933
  });
899
934
  }
900
935
  if (content['after']) {
901
936
  $.each(content['after'],function(a,b){
902
- if (!save['activity_blue_states'][b.uuid]) {
903
- save['activity_blue_states'][b.uuid] = true
904
- format_visual_add(b.position,"passive");
905
- }
937
+ format_visual_add(b.position,"passive",false);
906
938
  });
907
939
  }
908
940
  if (content['unmark']) {
909
941
  $.each(content['unmark'],function(a,b){
910
- if (save['activity_blue_states'][b.uuid]) {
911
- format_visual_remove(b.position,"passive")
912
- }
913
- save['activity_blue_states'][b.uuid] = true
914
- setTimeout(() => {delete save['activity_blue_states'][b.uuid]},5000);
942
+ format_visual_remove(b.position,"passive",false)
915
943
  });
916
944
  }
917
945
  if (!content['at'] && !content['unmark'] && !content['after'] && !content['wait']) {
@@ -944,15 +972,11 @@ function monitor_instance_state_change(notification) { //{{{
944
972
  monitor_instance_pos();
945
973
  }
946
974
  if (notification == "running") {
947
- // // we cant do that, because the events might not be ordered. so jus remove all the blue ones.
948
- // format_visual_clear();
949
-
950
975
  for (const [key, ele] of Object.entries(node_state)) {
951
976
  for (i=0; i<ele.passive; i++) {
952
977
  format_visual_remove(key,'passive');
953
978
  }
954
979
  }
955
- // save_blue_states has to be left alone, because we dont know the uuid
956
980
  }
957
981
 
958
982
  var but = "";
@@ -1424,15 +1448,18 @@ async function load_testset_handlers(url,testset,vals) {// {{{
1424
1448
  return Promise.all(promises);
1425
1449
  }// }}}
1426
1450
 
1427
- function format_visual_add(what,cls) {//{{{
1451
+ function format_visual_add(what,cls,sum=true) {//{{{
1428
1452
  if (node_state[what] == undefined)
1429
1453
  node_state[what] = {};
1430
1454
  if (node_state[what][cls] == undefined)
1431
1455
  node_state[what][cls] = 0;
1432
1456
  node_state[what][cls] += 1;
1457
+ if (sum == false && node_state[what][cls] > 1) {
1458
+ node_state[what][cls] = 1;
1459
+ }
1433
1460
  format_visual_set(what);
1434
1461
  }//}}}
1435
- function format_visual_remove(what,cls) {//{{{
1462
+ function format_visual_remove(what,cls,sum=true) {//{{{
1436
1463
  if (node_state[what] == undefined)
1437
1464
  node_state[what] = {};
1438
1465
  if (node_state[what][cls] == undefined)
@@ -1440,6 +1467,9 @@ function format_visual_remove(what,cls) {//{{{
1440
1467
  node_state[what][cls] -= 1;
1441
1468
  if (node_state[what][cls] < 0)
1442
1469
  node_state[what][cls] = 0;
1470
+ if (sum == false && node_state[what][cls] < 0) {
1471
+ node_state[what][cls] = 0;
1472
+ }
1443
1473
  format_visual_set(what);
1444
1474
  }//}}}
1445
1475
 
@@ -144,6 +144,9 @@ function modifiers_select() {
144
144
  let it = $(s).attr('value');
145
145
  $('select',r).val(it);
146
146
  modifiers_display_ui(rep + 'modifiers/',top,it,save['modifiers_active'][top] == it);
147
+ if (save['modifiers_active'][top] != it) {
148
+ modifiers_update({"target": $('select',r)});
149
+ }
147
150
  save['modifiers_active'][top] = it;
148
151
  }
149
152
  });