cpee 2.0.14 → 2.0.19

Sign up to get free protection for your applications and to get access to all the features.
Files changed (43) hide show
  1. checksums.yaml +4 -4
  2. data/cockpit/css/track.css +7 -0
  3. data/cockpit/css/ui.css +2 -3
  4. data/cockpit/index.html +2 -1
  5. data/cockpit/js/instance.js +15 -7
  6. data/cockpit/js/model.js +1 -1
  7. data/cockpit/templates/{BPM 2020 Manual Adjust.xml → UR-VUE 2020 Manual Adjust.xml } +1 -1
  8. data/cockpit/templates/{BPM 2020 Solution Baseline.xml → UR-VUE 2020 Solution Baseline.xml } +10 -3
  9. data/cockpit/templates/{BPM 2020 Solution NN.xml → UR-VUE 2020 Solution NN.xml } +1 -1
  10. data/cockpit/templates/{BPM 2020 Solution View.xml → UR-VUE 2020 Solution View.xml } +8 -1
  11. data/cockpit/templates/UR-VUE 2020.xml +26 -0
  12. data/cockpit/themes/compact/rngs/closed_loop.rng +13 -4
  13. data/cockpit/themes/compact/rngs/closed_loop_control.rng +3 -0
  14. data/cockpit/themes/compact/rngs/closed_loop_measuring.rng +3 -0
  15. data/cockpit/themes/default/rngs/closed_loop.rng +13 -4
  16. data/cockpit/themes/default/rngs/closed_loop_control.rng +3 -0
  17. data/cockpit/themes/default/rngs/closed_loop_measuring.rng +3 -0
  18. data/cockpit/themes/diana/rngs/closed_loop.rng +13 -4
  19. data/cockpit/themes/diana/rngs/closed_loop_control.rng +3 -0
  20. data/cockpit/themes/diana/rngs/closed_loop_measuring.rng +3 -0
  21. data/cockpit/themes/diana/theme.js +1 -1
  22. data/cockpit/themes/extended/rngs/closed_loop.rng +13 -4
  23. data/cockpit/themes/extended/rngs/closed_loop_control.rng +3 -0
  24. data/cockpit/themes/extended/rngs/closed_loop_measuring.rng +3 -0
  25. data/cockpit/themes/model/rngs/call.rng +5 -1
  26. data/cockpit/themes/model/rngs/callmanipulate.rng +5 -1
  27. data/cockpit/themes/packed/rngs/closed_loop.rng +13 -4
  28. data/cockpit/themes/packed/rngs/closed_loop_control.rng +3 -0
  29. data/cockpit/themes/packed/rngs/closed_loop_measuring.rng +3 -0
  30. data/cockpit/themes/preset/rngs/closed_loop.rng +13 -4
  31. data/cockpit/themes/preset/rngs/closed_loop_control.rng +3 -0
  32. data/cockpit/themes/preset/rngs/closed_loop_measuring.rng +3 -0
  33. data/cockpit/themes/preset/theme.js +1 -1
  34. data/cockpit/track.html +1 -1
  35. data/cpee.gemspec +1 -1
  36. data/lib/cpee/controller.rb +3 -2
  37. data/server/handlerwrappers/default.rb +17 -21
  38. data/server/routing/forward-votes.rb +5 -1
  39. data/server/routing/persist.rb +1 -1
  40. data/tools/cpee +1 -1
  41. data/tools/server/{server.rb → cpee} +0 -0
  42. metadata +8 -8
  43. data/cockpit/templates/BPM 2020.xml +0 -26
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3450e319d9c6145ba438d79946c73b63f5999b0dc48f0b31337445f138b4bf57
4
- data.tar.gz: 71b3a1fd7cd4c52aa8f0f17bc69f7a0d3a92ba41670dbb7a8c3890e89f33ec5c
3
+ metadata.gz: 4e9b61672c390c5bcc5e5cf7a3e3629c7c2bc1cc03e59fe991d209e8648f3e64
4
+ data.tar.gz: 602b274ea26365cc8d6552be1fedd101cfe34de2cf38bf9659bc73f1856a51d8
5
5
  SHA512:
6
- metadata.gz: 5a965cee9e6eba28932a6b30363b3b5cf8cbe1411d14d558f52b672c4bd771ead3fefa9dc38e162c6025260560d3ff5bc7590ac18e84136cc29ce7e6482cf42d
7
- data.tar.gz: cd860d46c52d5e9892f1a9131f143f9fd351e8f7a4f806d3f63b508d864c4214b9b4dcbf1f12b8768332a9d31d06be5ea23f39dc80fe78a7f50e5aa7c7a94d18
6
+ metadata.gz: 6773ee8826306305997f1d69bce0fda39bd187a12ebc9567d90de2fdb701dd7c3cbcde0e5756221dad60848b878ea6b97156ec1bf8e08985a0c5d193ab71dca6
7
+ data.tar.gz: d39b5fcb092cf98ad5034da936f2fa0bb5feffe95438e825385339147cbf89cf981255e97c3ea6634bfb04789b4039905f1f9b6909db3df09cdb04ab627f832c
@@ -51,3 +51,10 @@
51
51
  white-space: nowrap;
52
52
  margin-bottom: 0.1em;
53
53
  }
54
+
55
+ #current-log[href]:before {
56
+ content: "[";
57
+ }
58
+ #current-log[href]:after {
59
+ content: "]";
60
+ }
@@ -105,9 +105,6 @@ ui-tabbed ui-tabbar ui-behind button {
105
105
  #current-graph[href]:before {
106
106
  content: "|";
107
107
  }
108
- #current-log[href]:before {
109
- content: "|";
110
- }
111
108
 
112
109
  #parameters ui-content { height: 8.5em; min-height: 1.7em; }
113
110
 
@@ -146,6 +143,8 @@ ui-tabbed ui-tabbar ui-behind button {
146
143
 
147
144
  #areaexecution table.x-ui-compact tbody.exe td { height: 2.2em; }
148
145
 
146
+ #arealog > div { padding-left: 1em; padding-top: 1em; }
147
+
149
148
  #dat_endpoints {
150
149
  border-collapse:collapse;
151
150
  border-spacing:0;
@@ -234,7 +234,7 @@
234
234
  <ui-tab class="" data-tab="details" id="tabdetails">Graph</ui-tab>
235
235
  <ui-tab class="inactive" data-tab="dsl" id="tabdsl" >Description</ui-tab>
236
236
  <ui-tab class="inactive" data-tab="log" id="tablog" >Log</ui-tab>
237
- <ui-behind ><a style='display:none' target='_blank' id='current-track'>T</a><a style='display:none' target='_blank' id='current-graph'>G</a><a style='display:none' target='_blank' id='current-log'>L</a></ui-behind>
237
+ <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>
238
238
  </ui-tabbar>
239
239
  <ui-content>
240
240
  <ui-area data-belongs-to-tab="details" id='graphcolumn'>
@@ -248,6 +248,7 @@
248
248
  </ui-area>
249
249
  <ui-area data-belongs-to-tab="dsl" id="areadsl" class="inactive"></ui-area>
250
250
  <ui-area data-belongs-to-tab="log" id="arealog" class="inactive"> <!--{{{-->
251
+ <div>Persistent Log: <a style='display:none' target='_blank' id='current-log'></a></div>
251
252
  <table id="dat_log" class="x-ui-layout"></table>
252
253
  </ui-area> <!--}}}-->
253
254
  </ui-content>
@@ -353,10 +353,6 @@ function monitor_instance(cin,rep,load,exec) {// {{{
353
353
  $("#current-graph").attr('href','graph.html?monitor=' + url);
354
354
  $("#current-track").show();
355
355
  $("#current-track").attr('href','track.html?monitor=' + url);
356
- if ($('body').attr('current-logs')) {
357
- $("#current-log").show();
358
- $("#current-log").attr('href','edit.html?monitor=' + url);
359
- }
360
356
  var q = $.parseQuerySimple();
361
357
  history.replaceState({}, '', '?' + (q.min || q.min=="" ? "min&" : "") + 'monitor='+url);
362
358
 
@@ -446,6 +442,17 @@ function monitor_instance_values(val) {// {{{
446
442
  var text = $(" > attributes > info",res).text() + " (" + url.replace(/\/$/,'').split(/[\\/]/).pop() + ")";
447
443
  $('#title').text(text);
448
444
  document.title = text;
445
+ if ($('body').attr('current-save')) {
446
+ $('body').attr('current-save-dir',$(" > attributes > design_dir",res).text());
447
+ }
448
+ if ($('body').attr('current-logs')) {
449
+ var uuid = $(" > attributes > uuid",res).text();
450
+ $("#current-log").show();
451
+ $("#current-log").attr('href',$('body').attr('current-logs') + uuid + '.xes.yaml');
452
+ if ($("#current-log").text() == '') {
453
+ $("#current-log").text(uuid + '.xes.yaml');
454
+ }
455
+ }
449
456
  }
450
457
  }
451
458
  });
@@ -830,6 +837,8 @@ function get_testset(deferred) {// {{{
830
837
  $('testset > transformation',testset).remove();
831
838
  $('testset > dsl',testset).remove();
832
839
  $('testset > dslx',testset).remove();
840
+ $('testset > attributes > uuid',testset).remove();
841
+ $('testset > attributes > theme',testset).remove();
833
842
  testset.append($X('<transformation xmlns="http://cpee.org/ns/properties/2.0"><description type="copy"/><dataelements type="none"/><endpoints type="none"/></transformation>'));
834
843
  var name = $('testset > attributes > info',testset).text();
835
844
  $('[xmlns]',testset).each((idx,ele) => {
@@ -880,9 +889,7 @@ function save_svgfile() {// {{{
880
889
  type: "GET",
881
890
  url: url + "/properties/attributes/info/",
882
891
  success: function(res){
883
- var name = $(res.documentElement).text();
884
-
885
- $('#savesvgfile').attr('download',name + '.svg');
892
+ $('#savesvgfile').attr('download',res + '.svg');
886
893
  $('#savesvgfile').attr('href','data:application/xml;charset=utf-8;base64,' + $B64(gc.serializeXML()));
887
894
  document.getElementById('savesvgfile').click();
888
895
  },
@@ -905,6 +912,7 @@ async function set_testset(testset,exec) {// {{{
905
912
  tset.append($("testset > attributes",testset));
906
913
  tset.append($("testset > description",testset));
907
914
  tset.append($("testset > transformation",testset));
915
+ $('testset > attributes > info',tset).remove();
908
916
 
909
917
  promises.push(
910
918
  $.ajax({
@@ -22,7 +22,7 @@ $(document).ready(function() {
22
22
  var def = new $.Deferred();
23
23
  def.done(function(name,testset) {
24
24
  $.ajax({
25
- url: $('body').attr('current-save') + name + '.xml',
25
+ url: $('body').attr('current-save') + ($('body').attr('current-save-dir') ? ($('body').attr('current-save-dir') + '/').replace(/\/+/,'/') : '') + name + '.xml',
26
26
  type: 'PUT',
27
27
  contentType: 'application/xml',
28
28
  data: testset.serializePrettyXML(),
@@ -174,7 +174,7 @@ data.item['adjust_y'] = (data.direction_first['y'] + data.direction_second['y'])
174
174
  <endpoints type="none"/>
175
175
  </transformation>
176
176
  <attributes>
177
- <info>BPM 2020 Manual Adjust</info>
177
+ <info>UR-VUE 2020 Manual Adjust</info>
178
178
  <modeltype>CPEE</modeltype>
179
179
  <theme>preset</theme>
180
180
  <resource>ur51</resource>
@@ -3,6 +3,13 @@
3
3
  <places>[[0,0],[1,0],[0,1],[1,1],[0,2],[1,2],[0,3],[1,3],[0,4],[1,4],[0,5],[1,5]]</places>
4
4
  </dataelements>
5
5
  <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
6
+ <handlers>
7
+ <handler url="http://tango.wst.univie.ac.at:9332">
8
+ <votes topic='state'>change</votes>
9
+ <events topic='state'>change</events>
10
+ <events topic='task'>instantiation</events>
11
+ </handler>
12
+ </handlers>
6
13
  <endpoints>
7
14
  <overview>http-put://ryloth.wst.univie.ac.at:9329/move/overview</overview>
8
15
  <move_tool>http-put://ryloth.wst.univie.ac.at:9329/move/position/point</move_tool>
@@ -12,7 +19,7 @@
12
19
  <get_offset_base>http-get://ryloth.wst.univie.ac.at:9329/view/details</get_offset_base>
13
20
  <get_offset_neural>http-get://ryloth.wst.univie.ac.at:9330/view/details</get_offset_neural>
14
21
  <grip_and_place>http-put://ryloth.wst.univie.ac.at:9329/move/grip_and_place</grip_and_place>
15
- <subprocess>http://localhost:9296/url/</subprocess>
22
+ <subprocess>https://cpee.org/flow/start/url/</subprocess>
16
23
  </endpoints>
17
24
  <description>
18
25
  <description xmlns="http://cpee.org/ns/description/1.0">
@@ -108,7 +115,7 @@
108
115
  <method>:post</method>
109
116
  <arguments>
110
117
  <behavior>wait_running</behavior>
111
- <url>http://localhost/flow/templates/BPM%202020%20Manual%20Adjust.xml</url>
118
+ <url>https://cpee.org/flow/templates/UR-VUE%202020%20Manual%20Adjust.xml</url>
112
119
  <init/>
113
120
  <endpoints/>
114
121
  <stream/>
@@ -188,7 +195,7 @@ data.item['y'] = data.items.first['y'] + data.item['adjust_y']</finalize>
188
195
  <endpoints type="none"/>
189
196
  </transformation>
190
197
  <attributes>
191
- <info>BPM 2020 Solution Baseline</info>
198
+ <info>UR-VUE 2020 Solution Baseline</info>
192
199
  <modeltype>CPEE</modeltype>
193
200
  <theme>preset</theme>
194
201
  <resource>ur51</resource>
@@ -189,7 +189,7 @@ data.item = result[0]</finalize>
189
189
  <endpoints type="none"/>
190
190
  </transformation>
191
191
  <attributes>
192
- <info>BPM 2020 Solution NN</info>
192
+ <info>UR-VUE 2020 Solution NN</info>
193
193
  <modeltype>CPEE</modeltype>
194
194
  <theme>preset</theme>
195
195
  <resource>ur51</resource>
@@ -1,6 +1,13 @@
1
1
  <testset xmlns="http://cpee.org/ns/properties/2.0">
2
2
  <dataelements/>
3
3
  <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
4
+ <handlers>
5
+ <handler url="http://tango.wst.univie.ac.at:9332">
6
+ <votes topic='state'>change</votes>
7
+ <events topic='state'>change</events>
8
+ <events topic='task'>instantiation</events>
9
+ </handler>
10
+ </handlers>
4
11
  <endpoints>
5
12
  <overview>http-put://ryloth.wst.univie.ac.at:9329/move/overview</overview>
6
13
  <move_tool>http-put://ryloth.wst.univie.ac.at:9329/move/position/point</move_tool>
@@ -136,7 +143,7 @@ data.item = result[0]</finalize>
136
143
  <endpoints type="none"/>
137
144
  </transformation>
138
145
  <attributes>
139
- <info>BPM 2020 Solution View</info>
146
+ <info>UR-VUE 2020 Solution View</info>
140
147
  <modeltype>CPEE</modeltype>
141
148
  <theme>preset</theme>
142
149
  <resource>ur51</resource>
@@ -0,0 +1,26 @@
1
+ <testset xmlns="http://cpee.org/ns/properties/2.0">
2
+ <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
3
+ <handlers>
4
+ <handler url="http://tango.wst.univie.ac.at:9332">
5
+ <votes topic='state'>change</votes>
6
+ <events topic='state'>change</events>
7
+ <events topic='task'>instantiation</events>
8
+ </handler>
9
+ </handlers>
10
+ <endpoints>
11
+ <overview>http-put://ryloth.wst.univie.ac.at:9329/move/overview</overview>
12
+ <move_tool>http-put://ryloth.wst.univie.ac.at:9329/move/position/point</move_tool>
13
+ <move_camera>http-put://ryloth.wst.univie.ac.at:9329/move/position/view</move_camera>
14
+ <get_items_base>http-get://ryloth.wst.univie.ac.at:9329/view/items</get_items_base>
15
+ <get_items_neural>http-get://ryloth.wst.univie.ac.at:9330/view/items</get_items_neural>
16
+ <get_offset_base>http-get://ryloth.wst.univie.ac.at:9329/view/details</get_offset_base>
17
+ <get_offset_neural>http-get://ryloth.wst.univie.ac.at:9330/view/details</get_offset_neural>
18
+ <grip_and_place>http-put://ryloth.wst.univie.ac.at:9329/move/grip_and_place</grip_and_place>
19
+ <subprocess>https://cpee.org/flow/start/url/</subprocess>
20
+ <wait>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</wait>
21
+ <adjust>https://cpee.org/flow/templates/UR-VUE%202020%20Manual%20Adjust.xml</adjust>
22
+ </endpoints>
23
+ <attributes>
24
+ <resource>ur51</resource>
25
+ </attributes>
26
+ </testset>
@@ -1,13 +1,16 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" name="closed_loop" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://cpee.org/ns/description/1.0">
2
- <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
- <data type="float" rngui:label="Hz"/>
4
- </attribute>
5
- <attribute name="behaviour" rngui:label="Interval duration overrun">
2
+ <attribute name="overrun" rngui:label="Interval duration overrun">
6
3
  <choice>
7
4
  <value>wait</value>
8
5
  <value>cancel</value>
9
6
  </choice>
10
7
  </attribute>
8
+ <attribute name="execution" rngui:label="Measure-control cycle execution">
9
+ <choice>
10
+ <value>sequential</value>
11
+ <value>parallel</value>
12
+ </choice>
13
+ </attribute>
11
14
  <element name="_probability" rngui:mark="true" rngui:header="Execution Probability">
12
15
  <element name="_probability_min" rngui:label="Min times">
13
16
  <data type="nonNegativeInteger" rngui:label="Times"/>
@@ -20,6 +23,9 @@
20
23
  </element>
21
24
  </element>
22
25
  <element rngui:ignore="true" name="closed_loop_measuring">
26
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
27
+ <data type="float" rngui:label="Hz"/>
28
+ </attribute>
23
29
  <element name="_expected" rngui:header="Values Expected to Change">
24
30
  <zeroOrMore rngui:label="Add Value">
25
31
  <element name="value" rngui:label="Value">
@@ -29,6 +35,9 @@
29
35
  </element>
30
36
  </element>
31
37
  <element rngui:ignore="true" name="closed_loop_control">
38
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
39
+ <data type="float" rngui:label="Hz"/>
40
+ </attribute>
32
41
  <element name="_expected" rngui:header="Values Expected to Change">
33
42
  <zeroOrMore rngui:label="Add Value">
34
43
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_control" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_measuring" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="value" rngui:label="Value">
@@ -1,13 +1,16 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" name="closed_loop" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://cpee.org/ns/description/1.0">
2
- <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
- <data type="float" rngui:label="Hz"/>
4
- </attribute>
5
- <attribute name="behaviour" rngui:label="Interval duration overrun">
2
+ <attribute name="overrun" rngui:label="Interval duration overrun">
6
3
  <choice>
7
4
  <value>wait</value>
8
5
  <value>cancel</value>
9
6
  </choice>
10
7
  </attribute>
8
+ <attribute name="execution" rngui:label="Measure-control cycle execution">
9
+ <choice>
10
+ <value>sequential</value>
11
+ <value>parallel</value>
12
+ </choice>
13
+ </attribute>
11
14
  <element name="_probability" rngui:mark="true" rngui:header="Execution Probability">
12
15
  <element name="_probability_min" rngui:label="Min times">
13
16
  <data type="nonNegativeInteger" rngui:label="Times"/>
@@ -20,6 +23,9 @@
20
23
  </element>
21
24
  </element>
22
25
  <element rngui:ignore="true" name="closed_loop_measuring">
26
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
27
+ <data type="float" rngui:label="Hz"/>
28
+ </attribute>
23
29
  <element name="_expected" rngui:header="Values Expected to Change">
24
30
  <zeroOrMore rngui:label="Add Value">
25
31
  <element name="value" rngui:label="Value">
@@ -29,6 +35,9 @@
29
35
  </element>
30
36
  </element>
31
37
  <element rngui:ignore="true" name="closed_loop_control">
38
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
39
+ <data type="float" rngui:label="Hz"/>
40
+ </attribute>
32
41
  <element name="_expected" rngui:header="Values Expected to Change">
33
42
  <zeroOrMore rngui:label="Add Value">
34
43
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_control" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_measuring" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="value" rngui:label="Value">
@@ -1,13 +1,16 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" name="closed_loop" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://cpee.org/ns/description/1.0">
2
- <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
- <data type="float" rngui:label="Hz"/>
4
- </attribute>
5
- <attribute name="behaviour" rngui:label="Interval duration overrun">
2
+ <attribute name="overrun" rngui:label="Interval duration overrun">
6
3
  <choice>
7
4
  <value>wait</value>
8
5
  <value>cancel</value>
9
6
  </choice>
10
7
  </attribute>
8
+ <attribute name="execution" rngui:label="Measure-control cycle execution">
9
+ <choice>
10
+ <value>sequential</value>
11
+ <value>parallel</value>
12
+ </choice>
13
+ </attribute>
11
14
  <element name="_probability" rngui:mark="true" rngui:header="Execution Probability">
12
15
  <element name="_probability_min" rngui:label="Min times">
13
16
  <data type="nonNegativeInteger" rngui:label="Times"/>
@@ -20,6 +23,9 @@
20
23
  </element>
21
24
  </element>
22
25
  <element rngui:ignore="true" name="closed_loop_measuring">
26
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
27
+ <data type="float" rngui:label="Hz"/>
28
+ </attribute>
23
29
  <element name="_expected" rngui:header="Values Expected to Change">
24
30
  <zeroOrMore rngui:label="Add Value">
25
31
  <element name="value" rngui:label="Value">
@@ -29,6 +35,9 @@
29
35
  </element>
30
36
  </element>
31
37
  <element rngui:ignore="true" name="closed_loop_control">
38
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
39
+ <data type="float" rngui:label="Hz"/>
40
+ </attribute>
32
41
  <element name="_expected" rngui:header="Values Expected to Change">
33
42
  <zeroOrMore rngui:label="Add Value">
34
43
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_control" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_measuring" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="value" rngui:label="Value">
@@ -866,7 +866,7 @@ function WFAdaptorManifestation(adaptor) {
866
866
  },
867
867
  'label': function(node){
868
868
  var avg = $('> _probability_avg',$(node).children('_probability')).text();
869
- var ret = [ { column: 'Label', value: 'f = ' + $(node).attr('frequency') + ' Hz (' + $(node).attr('behaviour') + ')' } ];
869
+ var ret = [ { column: 'Label', value: 'f = ' + $(node).attr('frequency') + ' Hz (' + $(node).attr('overrun') + ')' } ];
870
870
  if (avg != '') {
871
871
  ret.push({ column: 'Average', value: avg + '%' });
872
872
  }
@@ -1,13 +1,16 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" name="closed_loop" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://cpee.org/ns/description/1.0">
2
- <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
- <data type="float" rngui:label="Hz"/>
4
- </attribute>
5
- <attribute name="behaviour" rngui:label="Interval duration overrun">
2
+ <attribute name="overrun" rngui:label="Interval duration overrun">
6
3
  <choice>
7
4
  <value>wait</value>
8
5
  <value>cancel</value>
9
6
  </choice>
10
7
  </attribute>
8
+ <attribute name="execution" rngui:label="Measure-control cycle execution">
9
+ <choice>
10
+ <value>sequential</value>
11
+ <value>parallel</value>
12
+ </choice>
13
+ </attribute>
11
14
  <element name="_probability" rngui:mark="true" rngui:header="Execution Probability">
12
15
  <element name="_probability_min" rngui:label="Min times">
13
16
  <data type="nonNegativeInteger" rngui:label="Times"/>
@@ -20,6 +23,9 @@
20
23
  </element>
21
24
  </element>
22
25
  <element rngui:ignore="true" name="closed_loop_measuring">
26
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
27
+ <data type="float" rngui:label="Hz"/>
28
+ </attribute>
23
29
  <element name="_expected" rngui:header="Values Expected to Change">
24
30
  <zeroOrMore rngui:label="Add Value">
25
31
  <element name="value" rngui:label="Value">
@@ -29,6 +35,9 @@
29
35
  </element>
30
36
  </element>
31
37
  <element rngui:ignore="true" name="closed_loop_control">
38
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
39
+ <data type="float" rngui:label="Hz"/>
40
+ </attribute>
32
41
  <element name="_expected" rngui:header="Values Expected to Change">
33
42
  <zeroOrMore rngui:label="Add Value">
34
43
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_control" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_measuring" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="value" rngui:label="Value">
@@ -8,6 +8,10 @@
8
8
  <value id="sensor">Read From Sensor</value>
9
9
  <value id="human">Human Task</value>
10
10
  <value id="subprocess">Subprocess</value>
11
+ <value id="robot">Robot</value>
12
+ <value id="plc">PLC</value>
13
+ <value id="send">Send Message</value>
14
+ <value id="receive">Receive Message</value>
11
15
  </choice>
12
16
  </attribute>
13
17
  <element name="parameters" rngui:header="Properties">
@@ -59,4 +63,4 @@
59
63
  </element>
60
64
  </element>
61
65
  </element>
62
- </element>
66
+ </element>
@@ -8,6 +8,10 @@
8
8
  <value id="sensor">Read From Sensor</value>
9
9
  <value id="human">Human Task</value>
10
10
  <value id="subprocess">Subprocess</value>
11
+ <value id="robot">Robot</value>
12
+ <value id="plc">PLC</value>
13
+ <value id="send">Send Message</value>
14
+ <value id="receive">Receive Message</value>
11
15
  </choice>
12
16
  </attribute>
13
17
  <element name="parameters" rngui:header="Properties">
@@ -64,4 +68,4 @@
64
68
  </element>
65
69
  </element>
66
70
  </element>
67
- </element>
71
+ </element>
@@ -1,13 +1,16 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" name="closed_loop" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://cpee.org/ns/description/1.0">
2
- <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
- <data type="float" rngui:label="Hz"/>
4
- </attribute>
5
- <attribute name="behaviour" rngui:label="Interval duration overrun">
2
+ <attribute name="overrun" rngui:label="Interval duration overrun">
6
3
  <choice>
7
4
  <value>wait</value>
8
5
  <value>cancel</value>
9
6
  </choice>
10
7
  </attribute>
8
+ <attribute name="execution" rngui:label="Measure-control cycle execution">
9
+ <choice>
10
+ <value>sequential</value>
11
+ <value>parallel</value>
12
+ </choice>
13
+ </attribute>
11
14
  <element name="_probability" rngui:mark="true" rngui:header="Execution Probability">
12
15
  <element name="_probability_min" rngui:label="Min times">
13
16
  <data type="nonNegativeInteger" rngui:label="Times"/>
@@ -20,6 +23,9 @@
20
23
  </element>
21
24
  </element>
22
25
  <element rngui:ignore="true" name="closed_loop_measuring">
26
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
27
+ <data type="float" rngui:label="Hz"/>
28
+ </attribute>
23
29
  <element name="_expected" rngui:header="Values Expected to Change">
24
30
  <zeroOrMore rngui:label="Add Value">
25
31
  <element name="value" rngui:label="Value">
@@ -29,6 +35,9 @@
29
35
  </element>
30
36
  </element>
31
37
  <element rngui:ignore="true" name="closed_loop_control">
38
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
39
+ <data type="float" rngui:label="Hz"/>
40
+ </attribute>
32
41
  <element name="_expected" rngui:header="Values Expected to Change">
33
42
  <zeroOrMore rngui:label="Add Value">
34
43
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_control" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_measuring" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="value" rngui:label="Value">
@@ -1,13 +1,16 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" name="closed_loop" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" ns="http://cpee.org/ns/description/1.0">
2
- <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
- <data type="float" rngui:label="Hz"/>
4
- </attribute>
5
- <attribute name="behaviour" rngui:label="Interval duration overrun">
2
+ <attribute name="overrun" rngui:label="Interval duration overrun">
6
3
  <choice>
7
4
  <value>wait</value>
8
5
  <value>cancel</value>
9
6
  </choice>
10
7
  </attribute>
8
+ <attribute name="execution" rngui:label="Measure-control cycle execution">
9
+ <choice>
10
+ <value>sequential</value>
11
+ <value>parallel</value>
12
+ </choice>
13
+ </attribute>
11
14
  <element name="_probability" rngui:mark="true" rngui:header="Execution Probability">
12
15
  <element name="_probability_min" rngui:label="Min times">
13
16
  <data type="nonNegativeInteger" rngui:label="Times"/>
@@ -20,6 +23,9 @@
20
23
  </element>
21
24
  </element>
22
25
  <element rngui:ignore="true" name="closed_loop_measuring">
26
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
27
+ <data type="float" rngui:label="Hz"/>
28
+ </attribute>
23
29
  <element name="_expected" rngui:header="Values Expected to Change">
24
30
  <zeroOrMore rngui:label="Add Value">
25
31
  <element name="value" rngui:label="Value">
@@ -29,6 +35,9 @@
29
35
  </element>
30
36
  </element>
31
37
  <element rngui:ignore="true" name="closed_loop_control">
38
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
39
+ <data type="float" rngui:label="Hz"/>
40
+ </attribute>
32
41
  <element name="_expected" rngui:header="Values Expected to Change">
33
42
  <zeroOrMore rngui:label="Add Value">
34
43
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_control" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="change">
@@ -1,4 +1,7 @@
1
1
  <element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_measuring" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
2
+ <attribute name="frequency" rngui:label="Interval frequency in Hz" rngui:default="0.1">
3
+ <data type="float" rngui:label="Hz"/>
4
+ </attribute>
2
5
  <element name="_expected" rngui:header="Values Expected to Change">
3
6
  <zeroOrMore rngui:label="Add Value">
4
7
  <element name="value" rngui:label="Value">
@@ -217,7 +217,7 @@ function WFAdaptorManifestation(adaptor) {
217
217
  self.adaptor.illustrator.get_elements().removeClass('selected');
218
218
  self.adaptor.illustrator.get_labels().removeClass('selected');
219
219
 
220
- if (e && e.ctrlKey) {
220
+ if (e && (e.ctrlKey || e.metaKey)) {
221
221
  if (save['state'] != "ready" && save['state'] != "stopped") { return false; }
222
222
  var tab = $('#dat_details');
223
223
  tab.empty();
@@ -92,7 +92,7 @@
92
92
  </a>
93
93
  </span>
94
94
  <span> - </span>
95
- <span id="title">Loading ...</span>
95
+ <span id="title">Loading ...</span><span> <a style='display:none' target='_blank' id='current-log'>L</a></span>
96
96
  </div>
97
97
  <div id='state'>
98
98
  <span id="state_any">
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "cpee"
3
- s.version = "2.0.14"
3
+ s.version = "2.0.19"
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.license = "LGPL-3.0"
6
6
  s.summary = "Preliminary release of cloud process execution engine (cpee.org). If you just need workflow execution, without a rest service exposing it, then use WEEL."
@@ -89,7 +89,7 @@ module CPEE
89
89
  end
90
90
 
91
91
  def start
92
- if vote("state/change")
92
+ if vote("state/change", :state => 'running')
93
93
  @thread = @instance.start
94
94
  @thread.join
95
95
  else
@@ -126,6 +126,7 @@ module CPEE
126
126
  @redis.smembers("instance:#{id}/handlers/#{handler}").each do |client|
127
127
  voteid = Digest::MD5.hexdigest(Kernel::rand().to_s)
128
128
  content[:key] = voteid
129
+ content[:attributes] = attributes_translated
129
130
  content[:subscription] = client
130
131
  votes << voteid
131
132
  CPEE::Message::send(:vote,what,base,@id,uuid,info,content,@redis)
@@ -140,7 +141,7 @@ module CPEE
140
141
  index = message.index(' ')
141
142
  mess = message[index+1..-1]
142
143
  m = JSON.parse(mess)
143
- collect << (m['content'] == 'true' || false)
144
+ collect << ((m['content'] == true || m['content'] == 'true') || false)
144
145
  @votes.delete m['name']
145
146
  cancel_callback m['name']
146
147
  if collect.length >= votes.length
@@ -24,11 +24,7 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
24
24
 
25
25
  def self::inform_state_change(arguments,newstate) # {{{
26
26
  controller = arguments[0]
27
- controller.notify("state/change", :state => newstate, :timestamp => Time.now.xmlschema(3))
28
- end # }}}
29
- def self::inform_state_change(arguments,newstate) # {{{
30
- controller = arguments[0]
31
- controller.notify("state/change", :state => newstate, :timestamp => Time.now.xmlschema(3))
27
+ controller.notify("state/change", :state => newstate)
32
28
  end # }}}
33
29
  def self::inform_syntax_error(arguments,err,code)# {{{
34
30
  controller = arguments[0]
@@ -113,7 +109,7 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
113
109
 
114
110
  client = Riddl::Client.new(tendpoint)
115
111
 
116
- @controller.callback(self,callback,:activity_uuid => @handler_activity_uuid, :label => @label, :activity => @handler_position)
112
+ @controller.callback(self,callback,:'activity-uuid' => @handler_activity_uuid, :label => @label, :activity => @handler_position)
117
113
  @handler_passthrough = callback
118
114
 
119
115
  status, result, headers = client.request type => params
@@ -124,10 +120,10 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
124
120
  callback([ Riddl::Parameter::Complex.new('error','application/json',StringIO.new(JSON::generate({ 'status' => status, 'error' => c }))) ], headers)
125
121
  else
126
122
  if headers['CPEE_INSTANTIATION']
127
- @controller.notify("task/instantiation", :activity_uuid => @handler_activity_uuid, :label => @label, :activity => @handler_position, :endpoint => @handler_endpoint, :received => CPEE::ValueHelper.parse(headers['CPEE_INSTANTIATION']))
123
+ @controller.notify("task/instantiation", :'activity-uuid' => @handler_activity_uuid, :label => @label, :activity => @handler_position, :endpoint => @handler_endpoint, :received => CPEE::ValueHelper.parse(headers['CPEE_INSTANTIATION']))
128
124
  end
129
125
  if headers['CPEE_EVENT']
130
- @controller.notify("task/#{headers['CPEE_EVENT'].gsub(/[^\w_-]/,'')}", :activity_uuid => @handler_activity_uuid, :label => @label, :activity => @handler_position, :endpoint => @handler_endpoint)
126
+ @controller.notify("task/#{headers['CPEE_EVENT'].gsub(/[^\w_-]/,'')}", :'activity-uuid' => @handler_activity_uuid, :label => @label, :activity => @handler_position, :endpoint => @handler_endpoint)
131
127
  end
132
128
  if headers['CPEE_CALLBACK'] && headers['CPEE_CALLBACK'] == 'true' && result.any?
133
129
  headers['CPEE_UPDATE'] = true
@@ -146,11 +142,11 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
146
142
  @sensors = parameters.dig(:stream,:sensors)
147
143
  @aggregators = parameters.dig(:stream,:aggregators)
148
144
  @costs = parameters.dig(:stream,:costs)
149
- @controller.notify("activity/calling", :activity_uuid => @handler_activity_uuid, :label => @label, :activity => @handler_position, :passthrough => passthrough, :endpoint => @handler_endpoint, :parameters => parameters)
145
+ @controller.notify("activity/calling", :'activity-uuid' => @handler_activity_uuid, :label => @label, :activity => @handler_position, :passthrough => passthrough, :endpoint => @handler_endpoint, :parameters => parameters)
150
146
  if passthrough.to_s.empty?
151
147
  proto_curl parameters
152
148
  else
153
- @controller.callback(self,passthrough,:activity_uuid => @handler_activity_uuid, :label => @label, :activity => @handler_position)
149
+ @controller.callback(self,passthrough,:'activity-uuid' => @handler_activity_uuid, :label => @label, :activity => @handler_position)
154
150
  @handler_passthrough = passthrough
155
151
  end
156
152
  end # }}}
@@ -179,33 +175,33 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
179
175
  end # }}}
180
176
 
181
177
  def inform_activity_done # {{{
182
- @controller.notify("activity/done", :activity_uuid => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position)
178
+ @controller.notify("activity/done", :'activity-uuid' => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position)
183
179
  end # }}}
184
180
  def inform_activity_manipulate # {{{
185
- @controller.notify("activity/manipulating", :activity_uuid => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position)
181
+ @controller.notify("activity/manipulating", :'activity-uuid' => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position)
186
182
  end # }}}
187
183
  def inform_activity_failed(err) # {{{
188
184
  puts err.message
189
185
  puts err.backtrace
190
- @controller.notify("activity/failed", :activity_uuid => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position, :message => err.message, :line => err.backtrace[0].match(/(.*?):(\d+):/)[2], :where => err.backtrace[0].match(/(.*?):(\d+):/)[1])
186
+ @controller.notify("activity/failed", :'activity-uuid' => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position, :message => err.message, :line => err.backtrace[0].match(/(.*?):(\d+):/)[2], :where => err.backtrace[0].match(/(.*?):(\d+):/)[1])
191
187
  end # }}}
192
188
  def inform_manipulate_change(status,changed_dataelements,changed_endpoints,dataelements,endpoints) # {{{
193
189
  unless status.nil?
194
- @controller.notify("status/change", :activity_uuid => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position, :id => status.id, :message => status.message)
190
+ @controller.notify("status/change", :'activity-uuid' => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position, :id => status.id, :message => status.message)
195
191
  end
196
192
  unless changed_dataelements.nil?
197
- @controller.notify("dataelements/change", :activity_uuid => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position, :changed => changed_dataelements, :values => dataelements)
193
+ @controller.notify("dataelements/change", :'activity-uuid' => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position, :changed => changed_dataelements, :values => dataelements)
198
194
  end
199
195
  unless changed_endpoints.nil?
200
- @controller.notify("endpoints/change", :activity_uuid => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position, :changed => changed_endpoints, :values => endpoints)
196
+ @controller.notify("endpoints/change", :'activity-uuid' => @handler_activity_uuid, :endpoint => @handler_endpoint, :label => @label, :activity => @handler_position, :changed => changed_endpoints, :values => endpoints)
201
197
  end
202
198
  end # }}}
203
199
 
204
200
  def vote_sync_after # {{{
205
- @controller.vote("activity/syncing_after", :activity_uuid => @handler_activity_uuid, :endpoint => @handler_endpoint, :activity => @handler_position, :label => @label)
201
+ @controller.vote("activity/syncing_after", :'activity-uuid' => @handler_activity_uuid, :endpoint => @handler_endpoint, :activity => @handler_position, :label => @label)
206
202
  end # }}}
207
203
  def vote_sync_before(parameters=nil) # {{{
208
- @controller.vote("activity/syncing_before", :activity_uuid => @handler_activity_uuid, :endpoint => @handler_endpoint, :activity => @handler_position, :label => @label, :parameters => parameters)
204
+ @controller.vote("activity/syncing_before", :'activity-uuid' => @handler_activity_uuid, :endpoint => @handler_endpoint, :activity => @handler_position, :label => @label, :parameters => parameters)
209
205
  end # }}}
210
206
 
211
207
  def simplify_result(result)
@@ -264,13 +260,13 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
264
260
  end
265
261
 
266
262
  def callback(result=nil,options={})
267
- @controller.notify("activity/receiving", :activity_uuid => @handler_activity_uuid, :label => @label, :activity => @handler_position, :endpoint => @handler_endpoint, :received => structurize_result(result), :sensors => @sensors, :aggregators => @aggregators, :costs => @costs)
263
+ @controller.notify("activity/receiving", :'activity-uuid' => @handler_activity_uuid, :label => @label, :activity => @handler_position, :endpoint => @handler_endpoint, :received => structurize_result(result), :sensors => @sensors, :aggregators => @aggregators, :costs => @costs)
268
264
  result = simplify_result(result)
269
265
  @handler_returnValue = result
270
266
  @handler_returnOptions = options
271
267
  if options['CPEE_UPDATE']
272
268
  if options['CPEE_UPDATE_STATUS']
273
- @controller.notify("activity/status", :activity_uuid => @handler_activity_uuid, :label => @label, :activity => @handler_position, :endpoint => @handler_endpoint, :status => options['CPEE_UPDATE_STATUS'])
269
+ @controller.notify("activity/status", :'activity-uuid' => @handler_activity_uuid, :label => @label, :activity => @handler_position, :endpoint => @handler_endpoint, :status => options['CPEE_UPDATE_STATUS'])
274
270
  end
275
271
  @handler_continue.continue WEEL::Signal::Again
276
272
  else
@@ -294,7 +290,7 @@ class DefaultHandlerWrapper < WEEL::HandlerWrapperBase
294
290
  pp "#{type} - #{nesting} - #{tid} - #{parent} - #{parameters.inspect}"
295
291
 
296
292
  @controller.vote("simulating/step",
297
- :activity_uuid => @handler_activity_uuid,
293
+ :'activity-uuid' => @handler_activity_uuid,
298
294
  :label => @label,
299
295
  :activity => tid,
300
296
  :endpoint => @handler_endpoint,
@@ -86,7 +86,11 @@ Daemonite.new do |opts|
86
86
  Riddl::Parameter::Complex::new('notification','application/json',mess)
87
87
  ] rescue [ 0, [], []])
88
88
  if status >= 200 && status < 300
89
- val = result[0].value.read
89
+ val = if result[0].class == Riddl::Parameter::Simple
90
+ result[0].value
91
+ else
92
+ result[0].value.read
93
+ end
90
94
  if (headers["CPEE_CALLBACK"] && headers["CPEE_CALLBACK"] == 'true') || val == 'callback'
91
95
  persist_handler instance, callback_key, m, redis
92
96
  else # they may send true or false
@@ -55,7 +55,7 @@ Daemonite.new do |opts|
55
55
  when 'event:state/change'
56
56
  redis.multi do |multi|
57
57
  multi.set("instance:#{instance}/state",mess.dig('content','state'))
58
- multi.set("instance:#{instance}/state/@changed",mess.dig('content','timestamp'))
58
+ multi.set("instance:#{instance}/state/@changed",mess.dig('timestamp'))
59
59
  end
60
60
  when 'event:handlerwrapper/change'
61
61
  redis.set("instance:#{instance}/handlerwrapper",mess.dig('content','handlerwrapper'))
data/tools/cpee CHANGED
@@ -65,7 +65,7 @@ p2 = ARGV[2]
65
65
  cockpit = "#{curpath}/../cockpit/"
66
66
 
67
67
  def js_libs(cockpit)
68
- res = Typhoeus.get('http://cpee.org/js_libs/js_libs.zip')
68
+ res = Typhoeus.get('https://cpee.org/js_libs/js_libs.zip')
69
69
  if res.success?
70
70
  File.write(File.join(cockpit,'js_libs.zip'),res.response_body)
71
71
  Zip::File.open(File.join(cockpit,'js_libs.zip')) do |zip_file|
File without changes
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cpee
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.14
4
+ version: 2.0.19
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juergen eTM Mangler
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: tools
12
12
  cert_chain: []
13
- date: 2020-11-05 00:00:00.000000000 Z
13
+ date: 2020-11-19 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: riddl
@@ -185,17 +185,17 @@ files:
185
185
  - cockpit/templates.legacy/convert_preset.rb
186
186
  - cockpit/templates.legacy/testsets.xml
187
187
  - cockpit/templates.legacy/transformations.xml
188
- - cockpit/templates/BPM 2020 Manual Adjust.xml
189
- - cockpit/templates/BPM 2020 Solution Baseline.xml
190
- - cockpit/templates/BPM 2020 Solution NN.xml
191
- - cockpit/templates/BPM 2020 Solution View.xml
192
- - cockpit/templates/BPM 2020.xml
193
188
  - cockpit/templates/Coopis 2010.xml
194
189
  - cockpit/templates/IUPC arXiv:1104.3609 P34 1.xml
195
190
  - cockpit/templates/IUPC arXiv:1104.3609 P34 2.xml
196
191
  - cockpit/templates/IUPC arXiv:1104.3609 P34 3.xml
197
192
  - cockpit/templates/Track Test Local.xml
198
193
  - cockpit/templates/Track Test.xml
194
+ - cockpit/templates/UR-VUE 2020 Manual Adjust.xml
195
+ - cockpit/templates/UR-VUE 2020 Solution Baseline.xml
196
+ - cockpit/templates/UR-VUE 2020 Solution NN.xml
197
+ - cockpit/templates/UR-VUE 2020 Solution View.xml
198
+ - cockpit/templates/UR-VUE 2020.xml
199
199
  - cockpit/templates/Worklist.xml
200
200
  - cockpit/templates/instantiate.local/Take_Sub.xml
201
201
  - cockpit/templates/instantiate/Take_Perf.xml
@@ -607,9 +607,9 @@ files:
607
607
  - server/server.conf
608
608
  - server/server.rb
609
609
  - tools/cpee
610
+ - tools/server/cpee
610
611
  - tools/server/resources/notifications/logging/subscription.xml
611
612
  - tools/server/resources/properties.init
612
- - tools/server/server.rb
613
613
  homepage: http://cpee.org/
614
614
  licenses:
615
615
  - LGPL-3.0
@@ -1,26 +0,0 @@
1
- <testset>
2
- <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
3
- <handlers>
4
- <handler url="http://tango.wst.univie.ac.at:9332">
5
- <votes topic='state'>change</votes>
6
- <events topic='state'>change</events>
7
- <events topic='task'>instantiation</events>
8
- </handler>
9
- </handlers>
10
- <endpoints>
11
- <overview xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http-put://ryloth.wst.univie.ac.at:9329/move/overview</overview>
12
- <move_tool xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http-put://ryloth.wst.univie.ac.at:9329/move/position/point</move_tool>
13
- <move_camera xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http-put://ryloth.wst.univie.ac.at:9329/move/position/view</move_camera>
14
- <get_items_base xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http-get://ryloth.wst.univie.ac.at:9329/view/items</get_items_base>
15
- <get_items_neural xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http-get://ryloth.wst.univie.ac.at:9330/view/items</get_items_neural>
16
- <get_offset_base xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http-get://ryloth.wst.univie.ac.at:9329/view/details</get_offset_base>
17
- <get_offset_neural xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http-get://ryloth.wst.univie.ac.at:9330/view/details</get_offset_neural>
18
- <wait xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</wait>
19
- <grip_and_place xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http-put://ryloth.wst.univie.ac.at:9329/move/grip_and_place</grip_and_place>
20
- <subprocess xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://cpee.org:9296/url/</subprocess>
21
- <adjust xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://cpee.org/~demo/cpee-cockpit/templates/BPM%202020%20Manual%20Adjust.xml</adjust>
22
- </endpoints>
23
- <attributes>
24
- <resource xmlns="http://riddl.org/ns/common-patterns/properties/1.0">ur51</resource>
25
- </attributes>
26
- </testset>