cpee 1.3.177 → 1.3.178

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. checksums.yaml +4 -4
  2. data/cockpit/css/ui.css +20 -3
  3. data/cockpit/{lib → css}/wfadaptor.css +0 -0
  4. data/cockpit/index.html +47 -22
  5. data/cockpit/js/details.js +18 -18
  6. data/cockpit/js/instance.js +50 -9
  7. data/cockpit/js/parameters.js +16 -15
  8. data/cockpit/js/ui.js +1 -4
  9. data/cockpit/js/wfadaptor.cpee.js +3 -20
  10. data/cockpit/{lib → js}/wfadaptor.js +39 -15
  11. data/cockpit/rngtest.html +14 -35
  12. data/cockpit/rngtest.rng +17 -39
  13. data/cockpit/rngtest.xml +7 -6
  14. data/cockpit/test.html +46 -0
  15. data/cockpit/testsets/Infinity.xml +28 -0
  16. data/cockpit/testsets/testsets.xml +1 -0
  17. data/cpee.gemspec +1 -1
  18. data/lib/cpee/controller.rb +8 -8
  19. data/lib/cpee/handler_properties.rb +1 -0
  20. data/lib/cpee/implementation.rb +9 -0
  21. data/lib/engine.xml +3 -3
  22. data/server/resources/topics.xml +3 -0
  23. data/test/{cb.rb → callback.rb} +0 -0
  24. metadata +8 -103
  25. data/cockpit/lib/custommenu.css +0 -84
  26. data/cockpit/lib/custommenu.js +0 -101
  27. data/cockpit/lib/jquery.browser.js +0 -40
  28. data/cockpit/lib/jquery.caret.min.js +0 -10
  29. data/cockpit/lib/jquery.cookie.js +0 -117
  30. data/cockpit/lib/jquery.min.js +0 -4
  31. data/cockpit/lib/jquery.svg.min.js +0 -6
  32. data/cockpit/lib/jquery.svgdom.min.js +0 -6
  33. data/cockpit/lib/parsequery.js +0 -19
  34. data/cockpit/lib/printf.js +0 -368
  35. data/cockpit/lib/relaxngui.js +0 -4
  36. data/cockpit/lib/strftime.min.js +0 -1
  37. data/cockpit/lib/ui.css +0 -261
  38. data/cockpit/lib/ui.js +0 -114
  39. data/cockpit/lib/underscore.min.js +0 -27
  40. data/cockpit/lib/util.js +0 -58
  41. data/cockpit/lib/wfadaptor-doc/demo1.html +0 -517
  42. data/cockpit/lib/wfadaptor-doc/demo2.html +0 -84
  43. data/cockpit/lib/wfadaptor-doc/index.html +0 -54
  44. data/server/instances/1/properties.xml +0 -113
  45. data/server/instances/10/properties.xml +0 -145
  46. data/server/instances/11/properties.xml +0 -169
  47. data/server/instances/12/properties.xml +0 -44
  48. data/server/instances/13/properties.xml +0 -146
  49. data/server/instances/14/notifications/5bcce90b170116a77fb25aea4e133acc/consumer-secret +0 -1
  50. data/server/instances/14/notifications/5bcce90b170116a77fb25aea4e133acc/producer-secret +0 -1
  51. data/server/instances/14/notifications/5bcce90b170116a77fb25aea4e133acc/subscription.xml +0 -23
  52. data/server/instances/14/properties.xml +0 -332
  53. data/server/instances/15/properties.xml +0 -44
  54. data/server/instances/16/properties.xml +0 -44
  55. data/server/instances/17/properties.xml +0 -44
  56. data/server/instances/18/properties.xml +0 -45
  57. data/server/instances/19/properties.xml +0 -45
  58. data/server/instances/2/properties.xml +0 -230
  59. data/server/instances/20/properties.xml +0 -46
  60. data/server/instances/21/properties.xml +0 -46
  61. data/server/instances/22/notifications/f9c504b8c715ec94a99fc3c6a660c53a/consumer-secret +0 -1
  62. data/server/instances/22/notifications/f9c504b8c715ec94a99fc3c6a660c53a/producer-secret +0 -1
  63. data/server/instances/22/notifications/f9c504b8c715ec94a99fc3c6a660c53a/subscription.xml +0 -23
  64. data/server/instances/22/properties.xml +0 -112
  65. data/server/instances/23/notifications/0a5a059f4ae897aee1446d560210dec0/consumer-secret +0 -1
  66. data/server/instances/23/notifications/0a5a059f4ae897aee1446d560210dec0/producer-secret +0 -1
  67. data/server/instances/23/notifications/0a5a059f4ae897aee1446d560210dec0/subscription.xml +0 -23
  68. data/server/instances/23/properties.xml +0 -148
  69. data/server/instances/24/properties.xml +0 -66
  70. data/server/instances/25/properties.xml +0 -46
  71. data/server/instances/26/properties.xml +0 -112
  72. data/server/instances/27/properties.xml +0 -212
  73. data/server/instances/28/properties.xml +0 -363
  74. data/server/instances/29/properties.xml +0 -148
  75. data/server/instances/3/properties.xml +0 -109
  76. data/server/instances/30/properties.xml +0 -150
  77. data/server/instances/31/properties.xml +0 -52
  78. data/server/instances/32/properties.xml +0 -52
  79. data/server/instances/33/properties.xml +0 -60
  80. data/server/instances/34/properties.xml +0 -148
  81. data/server/instances/35/properties.xml +0 -148
  82. data/server/instances/36/properties.xml +0 -150
  83. data/server/instances/37/notifications/5f979ed943f91ff75d75e551ba0642d6/consumer-secret +0 -1
  84. data/server/instances/37/notifications/5f979ed943f91ff75d75e551ba0642d6/producer-secret +0 -1
  85. data/server/instances/37/notifications/5f979ed943f91ff75d75e551ba0642d6/subscription.xml +0 -33
  86. data/server/instances/37/properties.xml +0 -57
  87. data/server/instances/38/properties.xml +0 -46
  88. data/server/instances/39/properties.xml +0 -58
  89. data/server/instances/4/properties.xml +0 -43
  90. data/server/instances/40/properties.xml +0 -148
  91. data/server/instances/41/properties.xml +0 -46
  92. data/server/instances/42/properties.xml +0 -148
  93. data/server/instances/43/notifications/9e7d05164a8539415d008b5bca3e0672/consumer-secret +0 -1
  94. data/server/instances/43/notifications/9e7d05164a8539415d008b5bca3e0672/producer-secret +0 -1
  95. data/server/instances/43/notifications/9e7d05164a8539415d008b5bca3e0672/subscription.xml +0 -34
  96. data/server/instances/43/properties.xml +0 -148
  97. data/server/instances/44/properties.xml +0 -148
  98. data/server/instances/45/notifications/442ed76f5da42dc9c57713840d713510/consumer-secret +0 -1
  99. data/server/instances/45/notifications/442ed76f5da42dc9c57713840d713510/producer-secret +0 -1
  100. data/server/instances/45/notifications/442ed76f5da42dc9c57713840d713510/subscription.xml +0 -34
  101. data/server/instances/45/properties.xml +0 -148
  102. data/server/instances/46/properties.xml +0 -46
  103. data/server/instances/47/notifications/63fba892899cc92fca381a666089e8d9/consumer-secret +0 -1
  104. data/server/instances/47/notifications/63fba892899cc92fca381a666089e8d9/producer-secret +0 -1
  105. data/server/instances/47/notifications/63fba892899cc92fca381a666089e8d9/subscription.xml +0 -34
  106. data/server/instances/47/notifications/e0cdacd3147aa31b0478a3ab1155db6c/consumer-secret +0 -1
  107. data/server/instances/47/notifications/e0cdacd3147aa31b0478a3ab1155db6c/producer-secret +0 -1
  108. data/server/instances/47/notifications/e0cdacd3147aa31b0478a3ab1155db6c/subscription.xml +0 -34
  109. data/server/instances/47/properties.xml +0 -148
  110. data/server/instances/5/properties.xml +0 -23
  111. data/server/instances/6/properties.xml +0 -203
  112. data/server/instances/7/properties.xml +0 -149
  113. data/server/instances/8/properties.xml +0 -145
  114. data/server/instances/9/properties.xml +0 -145
  115. data/server/server.pid +0 -1
  116. data/test/delete.rb +0 -27
  117. data/test/load.rb +0 -55
  118. data/test/testset.xml +0 -297
@@ -216,23 +216,6 @@ function CPEE(adaptor) {
216
216
  '</svg>');
217
217
  }
218
218
  },//}}}
219
- 'description': '<call id="###" endpoint="" xmlns="http://this.org/ns/description/1.0"><parameters><label>""</label><method>:post</method><parameters/></parameters><finalize output="result"/><update output="result"/></call>',
220
- 'permissible_children': function(node) { //{{{
221
- if(node.children('manipulate').lenght < 1)
222
- return [
223
- {'label': 'Scripts',
224
- 'function_call': adaptor.description.insert_last_into,
225
- 'menu_icon': elements.callmanipulate.illustrator.svg,
226
- 'params': [adaptor.description.elements.manipulate, node]}
227
- ];
228
- return [];
229
- }, //}}}
230
- 'adaptor' : {//{{{
231
- 'mousedown': function (node, e) {
232
- events.mousedown(node,e,true, true);
233
- },
234
- 'click': events.click,
235
- }//}}}
236
219
  }; /*}}}*/
237
220
  this.elements.choose_inclusive = { /*{{{*/
238
221
  'illustrator': {//{{{
@@ -270,7 +253,7 @@ function CPEE(adaptor) {
270
253
  return 'callcorrelation';
271
254
  } else if($('parameters > service', node).length > 0) {
272
255
  return 'callinjection';
273
- } else if($('manipulate', node).length > 0) {
256
+ } else if($('finalize,update', node).length > 0) {
274
257
  return 'callmanipulate';
275
258
  } else {
276
259
  return'call';
@@ -285,7 +268,7 @@ function CPEE(adaptor) {
285
268
  },//}}}
286
269
  'description': '<call id="###" endpoint="" xmlns="http://cpee.org/ns/description/1.0"><parameters xmlns="http://cpee.org/ns/description/1.0"><label>""</label><method>:post</method><parameters/></parameters></call>',
287
270
  'permissible_children': function(node) { //{{{
288
- if(node.children('manipulate').length < 1)
271
+ if(node.children('finalize,update').length < 1)
289
272
  return [
290
273
  {'label': 'Scripts',
291
274
  'function_call': adaptor.description.insert_last_into,
@@ -313,7 +296,7 @@ function CPEE(adaptor) {
313
296
  '</svg>');
314
297
  }
315
298
  },//}}}
316
- 'description': '<finalize xmlns="http://cpee.org/ns/description/1.0"/><update xmlns="http://cpee.org/ns/description/1.0"/>',
299
+ 'description': ['<finalize xmlns="http://cpee.org/ns/description/1.0"/>','<update xmlns="http://cpee.org/ns/description/1.0"/>'],
317
300
  'permissible_children': function(node) { //{{{
318
301
  return [];
319
302
  }, //}}}
@@ -253,31 +253,55 @@ function WfDescription(wf_adaptor, wf_illustrator) { // Model {{{
253
253
  var newn = $('*[new=true]',description);
254
254
  newn.removeAttr('new');
255
255
 
256
- if (newn.attr('svg-id') != undefined)
257
- adaptor.notify(newn.attr('svg-id'));
258
- else if (svgid != undefined)
259
- adaptor.notify(svgid);
260
- else
261
- console.info('Something went horribly wrong');
256
+ $.each(newn,function(k,nn){
257
+ if ($(nn).attr('svg-id') != undefined)
258
+ adaptor.notify($(nn).attr('svg-id'));
259
+ else if (svgid != undefined)
260
+ adaptor.notify(svgid);
261
+ });
262
262
  } // }}}
263
263
  // }}}
264
264
  // Adaption functions {{{
265
265
  this.insert_after = function(new_node, target) { // {{{
266
- var nn = $X(new_node.replace(/###/,get_free_id()));
267
- target.after(nn);
268
- nn.attr('new','true');
266
+ if ($.isArray(new_node)) {
267
+ $.each(new_node,function(k,v){
268
+ var nn = $X(v.replace(/###/,get_free_id()));
269
+ target.after(nn);
270
+ nn.attr('new','true');
271
+ });
272
+ } else {
273
+ var nn = $X(new_node.replace(/###/,get_free_id()));
274
+ target.after(nn);
275
+ nn.attr('new','true');
276
+ }
269
277
  update();
270
278
  } // }}}
271
279
  this.insert_first_into = function(new_node, target, selector) { // {{{
272
- var nn = $X(new_node.replace(/###/,get_free_id()));
273
- target.prepend(nn);
274
- nn.attr('new','true');
280
+ if ($.isArray(new_node)) {
281
+ $.each(new_node,function(k,v){
282
+ var nn = $X(v.replace(/###/,get_free_id()));
283
+ target.prepend(nn);
284
+ nn.attr('new','true');
285
+ });
286
+ } else {
287
+ var nn = $X(new_node.replace(/###/,get_free_id()));
288
+ target.prepend(nn);
289
+ nn.attr('new','true');
290
+ }
275
291
  update();
276
292
  } // }}}
277
293
  this.insert_last_into = function(new_node, target, selector) { // {{{
278
- var nn = $X(new_node.replace(/###/,get_free_id()));
279
- target.append(nn);
280
- nn.attr('new','true');
294
+ if ($.isArray(new_node)) {
295
+ $.each(new_node,function(k,v){
296
+ var nn = $X(v.replace(/###/,get_free_id()));
297
+ target.append(nn);
298
+ nn.attr('new','true');
299
+ });
300
+ } else {
301
+ var nn = $X(new_node.replace(/###/,get_free_id()));
302
+ target.append(nn);
303
+ nn.attr('new','true');
304
+ }
281
305
  update();
282
306
  } // }}}
283
307
  this.remove = function(selector, target) {//{{{
@@ -21,54 +21,33 @@
21
21
  <title>CPEE Cockpit</title>
22
22
 
23
23
  <!-- libs, do not modify -->
24
-
25
- <script type="text/javascript" src="lib/jquery.min.js"></script>
26
- <script type="text/javascript" src="lib/jquery.browser.js"></script>
27
- <script type="text/javascript" src="lib/jquery.svg.min.js"></script>
28
- <script type="text/javascript" src="lib/jquery.svgdom.min.js"></script>
29
- <script type="text/javascript" src="lib/jquery-ui.custom.min.js"></script>
30
- <script type="text/javascript" src="lib/util.js"></script>
31
- <script type="text/javascript" src="lib/printf.js"></script>
32
- <script type="text/javascript" src="lib/strftime.min.js"></script>
33
- <script type="text/javascript" src="lib/parsequery.js"></script>
34
- <script type="text/javascript" src="lib/underscore.min.js"></script>
35
- <script type="text/javascript" src="lib/jquery.caret.min.js"></script>
36
- <script type="text/javascript" src="lib/jquery.cookie.js"></script>
37
- <script type="text/javascript" src="lib/jquery.redraw.js"></script>
38
-
39
- <script type="text/javascript" src="lib/custommenu.js"></script>
40
- <script type="text/javascript" src="lib/wfadaptor.js"></script>
41
- <script type="text/javascript" src="lib/ui.js"></script>
42
-
43
- <link rel="stylesheet" href="lib/wfadaptor.css" type="text/css"/>
44
- <link rel="stylesheet" href="lib/custommenu.css" type="text/css"/>
45
- <link rel="stylesheet" href="lib/ui.css" type="text/css"/>
46
-
47
- <script type="text/javascript" src="lib/relaxngui.js"></script>
24
+ <script type="text/javascript" src="http://localhost/js_libs/jquery.min.js"></script>
25
+ <script type="text/javascript" src="http://localhost/js_libs/relaxngui.js"></script>
26
+ <link rel="stylesheet" href="http://localhost/js_libs/relaxngui.css" type="text/css"/>
27
+ <script type="text/javascript" src="http://localhost/js_libs/util.js"></script>
48
28
  <!-- custom stuff, play arround -->
49
29
 
50
- <script type="text/javascript" src="js/ui.js"></script>
51
- <script type="text/javascript" src="js/instance.js"></script>
52
- <script type="text/javascript" src="js/details.js"></script>
53
- <script type="text/javascript" src="js/parameters.js"></script>
54
- <script type="text/javascript" src="js/wfadaptor.cpee.js"></script>
55
- <link rel="stylesheet" href="css/ui.css" type="text/css"/>
56
- <link rel="stylesheet" href="css/ui.css" type="text/css"/>
57
30
  <script type="text/javascript">
58
31
  $("body").ready(function(){
59
32
  $.ajax({
60
33
  type: "GET",
61
34
  url: "rngtest.rng",
62
35
  success: function(res){
63
- console.log(res);
64
- new RelaxNGui($('#show'),res);
36
+ $.ajax({
37
+ type: "GET",
38
+ url: "rngtest.xml",
39
+ success: function(xml){
40
+ var rngui = new RelaxNGui($('> data',xml),res,$('#show'));
41
+ $('#saveall').on('click',rngui.save);
42
+ }
43
+ });
65
44
  }
66
45
  });
67
46
  });
68
47
  </script>
69
48
  </head>
70
49
  <body data-defaultport="9298">
71
- <div id="show">
72
- </div>
50
+ <div id="show"></div>
51
+ <button id='saveall'>save it all to console</button>
73
52
  </body>
74
53
  </html>
@@ -1,43 +1,24 @@
1
1
  <element rngui:version="1.2" name="data" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org">
2
- <rngui:ui/>
3
- <element name="type">
4
- <rngui:ui>
5
- <rngui:readonly/>
6
- <rngui:label>Type</rngui:label>
7
- </rngui:ui>
8
- <data type="string"/>
2
+ <element name="type" rngui:label="Type">
3
+ <data type="string" rngui:readonly="true"/>
9
4
  </element>
10
- <element name="position">
11
- <rngui:ui>
12
- <rngui:readonly/>
13
- <rngui:label>ID</rngui:label>
14
- </rngui:ui>
15
- <data type="string"/>
5
+ <element name="position" rngui:label="ID">
6
+ <data type="string" rngui:readonly="true"/>
16
7
  </element>
17
- <element name="endpoint">
18
- <rngui:ui>
19
- <rngui:label>Endpoint</rngui:label>
20
- </rngui:ui>
8
+ <element name="endpoint" rngui:label="Endpoint">
21
9
  <data type="string"/>
22
10
  </element>
23
- <element name="code">
24
- <rngui:ui>
25
- <rngui:label>Script</rngui:label>
26
- </rngui:ui>
27
- <text/>
11
+ <element name="finalize" rngui:label="Finalize">
12
+ <text rngui:label='Script that is executed, when a service returns data'/>
13
+ </element>
14
+ <element name="update" rngui:label="Update">
15
+ <text rngui:label='Script that is executed, when a service send intermediate data'/>
28
16
  </element>
29
17
  <element name='parameters'>
30
- <rngui:ui/>
31
- <element name="label">
32
- <rngui:ui>
33
- <rngui:label>Label</rngui:label>
34
- </rngui:ui>
35
- <data type="string"/>
18
+ <element name="label" rngui:label="Label">
19
+ <data type="string" rngui:label="Short description of the task"/>
36
20
  </element>
37
- <element name="method">
38
- <rngui:ui>
39
- <rngui:label>Method</rngui:label>
40
- </rngui:ui>
21
+ <element name="method" rngui:label="Method">
41
22
  <choice>
42
23
  <value>:post</value>
43
24
  <value>:get</value>
@@ -45,14 +26,11 @@
45
26
  <value>:delete</value>
46
27
  </choice>
47
28
  </element>
48
- <element name="parameters">
49
- <zeroOrMore>
50
- <rngui:ui>
51
- <rngui:heading>Label</rngui:heading>
52
- </rngui:ui>
53
- <element>
29
+ <element name="parameters" rngui:header="Parameters">
30
+ <zeroOrMore rngui:label="Create Parameter Pairs">
31
+ <element rngui:label='Name'>
54
32
  <anyName/>
55
- <data type="string"/>
33
+ <data type="string" rngui:label="Value"/>
56
34
  </element>
57
35
  </zeroOrMore>
58
36
  </element>
@@ -1,13 +1,14 @@
1
1
  <data>
2
- <type></type>
3
- <position></position>
4
- <endpoint></endpoint>
5
- <code></code>
2
+ <type>:activity</type>
3
+ <position>a1</position>
4
+ <endpoint>xyz</endpoint>
5
+ <finalize>abc = 1</finalize>
6
+ <update>def = 2</update>
6
7
  <parameters>
7
- <label></label>
8
+ <label>alalala</label>
8
9
  <method>:get</method>
9
10
  <parameters>
10
- <a/>
11
+ <a>1</a>
11
12
  <b/>
12
13
  <c/>
13
14
  </parameters>
@@ -0,0 +1,46 @@
1
+ <!--
2
+ This file is part of CPEE.
3
+
4
+ CPEE is free software: you can redistribute it and/or modify it under the terms
5
+ of the GNU General Public License as published by the Free Software Foundation,
6
+ either version 3 of the License, or (at your option) any later version.
7
+
8
+ CPEE is distributed in the hope that it will be useful, but WITHOUT ANY
9
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
10
+ PARTICULAR PURPOSE. See the GNU General Public License for more details.
11
+
12
+ You should have received a copy of the GNU General Public License along with
13
+ CPEE (file COPYING in the main directory). If not, see
14
+ <http://www.gnu.org/licenses/>.
15
+ -->
16
+
17
+ <!DOCTYPE html>
18
+ <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
19
+ <head>
20
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
21
+ <title>CPEE Cockpit</title>
22
+
23
+ <!-- libs, do not modify -->
24
+ <script type="text/javascript" src="http://gruppe.wst.univie.ac.at/js_libs/jquery.min.js"></script>
25
+ <script type="text/javascript" src="http://gruppe.wst.univie.ac.at/js_libs/relaxngui.js"></script>
26
+ <link rel="stylesheet" href="http://gruppe.wst.univie.ac.at/js_libs/relaxngui.css" type="text/css"/>
27
+ <!-- custom stuff, play arround -->
28
+
29
+ <script type="text/javascript">
30
+ $("body").ready(function(){
31
+ $.ajax({
32
+ type: "GET",
33
+ url: "rngtest.rng",
34
+ success: function(res){
35
+ var rngui = new RelaxNGui(null,res);
36
+ $('#show').append(rngui.result);
37
+ }
38
+ });
39
+ });
40
+ </script>
41
+ </head>
42
+ <body data-defaultport="9298">
43
+ <div id="show">
44
+ </div>
45
+ </body>
46
+ </html>
@@ -0,0 +1,28 @@
1
+ <testset>
2
+ <endpoints>
3
+ <infinity xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://gruppe.wst.univie.ac.at/~mangler/infinity.php</infinity>
4
+ </endpoints>
5
+ <description>
6
+ <description xmlns="http://cpee.org/ns/description/1.0">
7
+ <manipulate id="man">
8
+ data.pid = Digest::MD5.hexdigest(Kernel::rand().to_s)
9
+ </manipulate>
10
+ <loop pre_test="data.progress != 'END'">
11
+ <call id="a4" endpoint="infinity">
12
+ <parameters>
13
+ <label>"Warten auf Fortschritt"</label>
14
+ <method>:post</method>
15
+ <parameters>
16
+ <pid>data.pid</pid>
17
+ </parameters>
18
+ </parameters>
19
+ <finalize>data.progress = result["progress"]</finalize>
20
+ </call>
21
+ </loop>
22
+ </description>
23
+ </description>
24
+ <attributes>
25
+ <info xmlns="http://riddl.org/ns/common-patterns/properties/1.0">Inifinity Example</info>
26
+ <modeltype xmlns="http://riddl.org/ns/common-patterns/properties/1.0">CPEE</modeltype>
27
+ </attributes>
28
+ </testset>
@@ -1,4 +1,5 @@
1
1
  <testsets>
2
+ <testset>Infinity</testset>
2
3
  <testset>SOPROMO Test Sonification</testset>
3
4
  <testset>Linear</testset>
4
5
  <testset>Coopis Testset</testset>
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "cpee"
3
- s.version = "1.3.177"
3
+ s.version = "1.3.178"
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.license = "LGPL-3"
6
6
  s.summary = "Preliminary release of cloud process execution engine (cpee). If you just need workflow execution, without a rest/xmpp service exposing it, then use WEEL"
@@ -283,16 +283,16 @@ module CPEE
283
283
  end
284
284
  end #}}}
285
285
  def unserialize_dataelements! #{{{
286
- @instance.data.clear
287
- @properties.data.find("/p:properties/p:dataelements/p:*").each do |e|
288
- @instance.data[e.qname.to_sym] = ValueHelper::parse(e.text)
289
- end
286
+ @instance.data.clear
287
+ @properties.data.find("/p:properties/p:dataelements/p:*").each do |e|
288
+ @instance.data[e.qname.to_sym] = ValueHelper::parse(e.text)
289
+ end
290
290
  end #}}}
291
291
  def unserialize_endpoints! #{{{
292
- @instance.endpoints.clear
293
- @properties.data.find("/p:properties/p:endpoints/p:*").each do |e|
294
- @instance.endpoints[e.qname.to_sym] = e.text
295
- end
292
+ @instance.endpoints.clear
293
+ @properties.data.find("/p:properties/p:endpoints/p:*").each do |e|
294
+ @instance.endpoints[e.qname.to_sym] = e.text
295
+ end
296
296
  end #}}}
297
297
  def unserialize_state! #{{{
298
298
  state = @properties.data.find("string(/p:properties/p:state)")
@@ -31,6 +31,7 @@ class PropertiesHandler < Riddl::Utils::Properties::HandlerBase
31
31
  @data.notify('dataelements/change', :instance => @data.instance)
32
32
  when 'attributes'
33
33
  @data.unserialize_attributes!
34
+ @data.notify('attributes/change', :instance => @data.instance)
34
35
  when 'positions'
35
36
  @data.unserialize_positions!
36
37
  @data.notify('position/change', :instance => @data.instance)
@@ -35,6 +35,15 @@ module CPEE
35
35
  opts[:transformation_dslx] ||= File.expand_path(File.dirname(__FILE__) + '/../../server/resources/transformation_dslx.xsl')
36
36
  opts[:transformation_service] ||= File.expand_path(File.dirname(__FILE__) + '/../../server/resources/transformation.xml')
37
37
  opts[:empty_dslx] ||= File.expand_path(File.dirname(__FILE__) + '/../../server/resources/empty_dslx.xml')
38
+ opts[:infinite_loop_stop] ||= 10000
39
+
40
+ opts[:runtime_options] << [
41
+ "startclean", "delete instances before starting.", Proc.new { |status|
42
+ Dir.glob(File.expand_path(File.dirname(__FILE__) + '/../../server/instances/*')).each do |d|
43
+ FileUtils.rm_r(d) if File.basename(d) =~ /^\d+$/
44
+ end
45
+ }
46
+ ]
38
47
 
39
48
  Proc.new do
40
49
  Dir[opts[:global_handlerwrappers] + "/*.rb"].each do |h|
@@ -27,9 +27,9 @@
27
27
  <parameter name="id" type="integer"/>
28
28
  </message>
29
29
 
30
- <message name="instance-new">
31
- <parameter name="info" type="string"/>
32
- </message>
30
+ <message name="instance-new">
31
+ <parameter name="info" type="string"/>
32
+ </message>
33
33
 
34
34
  <message name="instance-info">
35
35
  <parameter name="info" mimetype="text/xml" handler="http://riddl.org/ns/handlers/relaxng">
@@ -45,6 +45,9 @@
45
45
  <topic id='endpoints'>
46
46
  <event>change</event>
47
47
  </topic>
48
+ <topic id='attributes'>
49
+ <event>change</event>
50
+ </topic>
48
51
  <topic id='handlerwrapper'>
49
52
  <event>change</event>
50
53
  </topic>