cpee 1.3.181 → 1.3.183

Sign up to get free protection for your applications and to get access to all the features.
Files changed (190) hide show
  1. checksums.yaml +4 -4
  2. data/cockpit/css/ui.css +19 -60
  3. data/cockpit/css/wfadaptor.css +11 -0
  4. data/cockpit/index.html +45 -71
  5. data/cockpit/js/details.js +50 -139
  6. data/cockpit/js/instance.js +133 -185
  7. data/cockpit/js/parameters.js +57 -55
  8. data/cockpit/js/ui.js +4 -29
  9. data/cockpit/js/wfadaptor.js +190 -108
  10. data/cockpit/rngs/attributes.rng +8 -0
  11. data/cockpit/rngs/dataelements.rng +8 -0
  12. data/cockpit/rngs/endpoints.rng +8 -0
  13. data/cockpit/testsets/Concurrent.xml +6 -6
  14. data/cockpit/testsets/Coopis Testset.xml +12 -12
  15. data/cockpit/testsets/ICSOC Testset.xml +27 -27
  16. data/cockpit/testsets/Infinity.xml +4 -4
  17. data/cockpit/testsets/Linear.xml +10 -10
  18. data/cockpit/testsets/Mangler 1.xml +20 -20
  19. data/cockpit/testsets/Mangler 2.xml +18 -18
  20. data/cockpit/testsets/Promise.xml +258 -0
  21. data/cockpit/testsets/SOPROMO Test Sonification.xml +11 -11
  22. data/cockpit/testsets/Syncing P34 1.xml +12 -12
  23. data/cockpit/testsets/Syncing P34 2.xml +12 -12
  24. data/cockpit/testsets/Syncing P34 3.xml +12 -12
  25. data/cockpit/testsets/Syncing P34.xml +12 -12
  26. data/cockpit/testsets/TEST - Bad Loop.xml +39 -39
  27. data/cockpit/testsets/Update.xml +1 -1
  28. data/cockpit/testsets/Worklist Parallel.xml +8 -8
  29. data/cockpit/testsets/Worklist Test CPEE.xml +2 -2
  30. data/cockpit/testsets/Worklist Test.xml +2 -2
  31. data/cockpit/testsets/testsets.xml +2 -0
  32. data/cockpit/themes/adventure/rngs/alternative.rng +5 -0
  33. data/cockpit/themes/adventure/rngs/call.rng +29 -0
  34. data/cockpit/{rngtest2.rng → themes/adventure/rngs/callmanipulate.rng} +9 -9
  35. data/cockpit/themes/adventure/rngs/choose.rng +8 -0
  36. data/cockpit/themes/adventure/rngs/critical.rng +5 -0
  37. data/cockpit/themes/adventure/rngs/escape.rng +1 -0
  38. data/cockpit/themes/adventure/rngs/finalize.rng +6 -0
  39. data/cockpit/themes/adventure/rngs/group.rng +3 -0
  40. data/cockpit/themes/adventure/rngs/loop.rng +11 -0
  41. data/cockpit/themes/adventure/rngs/manipulate.rng +6 -0
  42. data/cockpit/themes/adventure/rngs/otherwise.rng +1 -0
  43. data/cockpit/themes/adventure/rngs/parallel.rng +5 -0
  44. data/cockpit/themes/adventure/rngs/parallel_branch.rng +8 -0
  45. data/cockpit/themes/adventure/rngs/update.rng +6 -0
  46. data/cockpit/themes/adventure/symbols/alternative.svg +4 -0
  47. data/cockpit/themes/adventure/symbols/call.svg +4 -0
  48. data/cockpit/themes/adventure/symbols/callmanipulate.svg +6 -0
  49. data/cockpit/themes/adventure/symbols/choose.svg +5 -0
  50. data/cockpit/themes/adventure/symbols/choose_exclusive.svg +5 -0
  51. data/cockpit/themes/adventure/symbols/choose_inclusive.svg +4 -0
  52. data/cockpit/themes/adventure/symbols/critical.svg +4 -0
  53. data/cockpit/themes/adventure/symbols/escape.svg +5 -0
  54. data/cockpit/themes/adventure/symbols/loop.svg +5 -0
  55. data/cockpit/themes/adventure/symbols/manipulate.svg +4 -0
  56. data/cockpit/themes/adventure/symbols/otherwise.svg +4 -0
  57. data/cockpit/themes/adventure/symbols/parallel.svg +5 -0
  58. data/cockpit/themes/adventure/symbols/parallel_branch.svg +4 -0
  59. data/cockpit/themes/adventure/symbols/scripts.svg +4 -0
  60. data/cockpit/themes/adventure/symbols/start.svg +3 -0
  61. data/cockpit/themes/adventure/theme.js +729 -0
  62. data/cockpit/themes/default/rngs/alternative.rng +5 -0
  63. data/cockpit/themes/default/rngs/call.rng +29 -0
  64. data/cockpit/themes/default/rngs/callmanipulate.rng +41 -0
  65. data/cockpit/themes/default/rngs/choose.rng +8 -0
  66. data/cockpit/themes/default/rngs/critical.rng +5 -0
  67. data/cockpit/themes/default/rngs/escape.rng +1 -0
  68. data/cockpit/themes/default/rngs/finalize.rng +6 -0
  69. data/cockpit/themes/default/rngs/group.rng +3 -0
  70. data/cockpit/themes/default/rngs/loop.rng +11 -0
  71. data/cockpit/themes/default/rngs/manipulate.rng +6 -0
  72. data/cockpit/themes/default/rngs/otherwise.rng +1 -0
  73. data/cockpit/themes/default/rngs/parallel.rng +5 -0
  74. data/cockpit/themes/default/rngs/parallel_branch.rng +8 -0
  75. data/cockpit/themes/default/rngs/update.rng +6 -0
  76. data/cockpit/themes/default/symbols/alternative.svg +4 -0
  77. data/cockpit/themes/default/symbols/call.svg +4 -0
  78. data/cockpit/themes/default/symbols/callmanipulate.svg +6 -0
  79. data/cockpit/themes/default/symbols/choose.svg +5 -0
  80. data/cockpit/themes/default/symbols/choose_exclusive.svg +5 -0
  81. data/cockpit/themes/default/symbols/choose_inclusive.svg +4 -0
  82. data/cockpit/themes/default/symbols/critical.svg +4 -0
  83. data/cockpit/themes/default/symbols/escape.svg +5 -0
  84. data/cockpit/themes/default/symbols/loop.svg +5 -0
  85. data/cockpit/themes/default/symbols/manipulate.svg +4 -0
  86. data/cockpit/themes/default/symbols/otherwise.svg +4 -0
  87. data/cockpit/themes/default/symbols/parallel.svg +5 -0
  88. data/cockpit/themes/default/symbols/parallel_branch.svg +4 -0
  89. data/cockpit/themes/default/symbols/scripts.svg +4 -0
  90. data/cockpit/themes/default/symbols/start.svg +3 -0
  91. data/cockpit/themes/default/theme.js +729 -0
  92. data/cockpit/themes/lego/rngs/alternative.rng +5 -0
  93. data/cockpit/themes/lego/rngs/call.rng +41 -0
  94. data/cockpit/themes/lego/rngs/choose.rng +8 -0
  95. data/cockpit/themes/lego/rngs/critical.rng +5 -0
  96. data/cockpit/themes/lego/rngs/loop.rng +11 -0
  97. data/cockpit/themes/lego/rngs/manipulate.rng +6 -0
  98. data/cockpit/themes/lego/rngs/parallel.rng +5 -0
  99. data/cockpit/themes/lego/rngs/parallel_branch.rng +8 -0
  100. data/cockpit/themes/lego/symbols/alternative.svg +4 -0
  101. data/cockpit/themes/lego/symbols/call.svg +4 -0
  102. data/cockpit/themes/lego/symbols/callmanipulate.svg +6 -0
  103. data/cockpit/themes/lego/symbols/callori.svg +4 -0
  104. data/cockpit/themes/lego/symbols/choose.svg +4 -0
  105. data/cockpit/themes/lego/symbols/choose_exclusive.svg +5 -0
  106. data/cockpit/themes/lego/symbols/choose_inclusive.svg +4 -0
  107. data/cockpit/themes/lego/symbols/critical.svg +4 -0
  108. data/cockpit/themes/lego/symbols/escape.svg +5 -0
  109. data/cockpit/themes/lego/symbols/lego.svg +72 -0
  110. data/cockpit/themes/lego/symbols/loop.svg +5 -0
  111. data/cockpit/themes/lego/symbols/manipulate.svg +4 -0
  112. data/cockpit/themes/lego/symbols/otherwise.svg +4 -0
  113. data/cockpit/themes/lego/symbols/parallel.svg +6 -0
  114. data/cockpit/themes/lego/symbols/parallel_branch.svg +4 -0
  115. data/cockpit/themes/lego/symbols/scripts.svg +4 -0
  116. data/cockpit/themes/lego/symbols/start.svg +3 -0
  117. data/cockpit/themes/lego/theme.js +742 -0
  118. data/cockpit/themes/promise/rngs/alternative.rng +5 -0
  119. data/cockpit/themes/promise/rngs/call.rng +41 -0
  120. data/cockpit/themes/promise/rngs/choose.rng +8 -0
  121. data/cockpit/themes/promise/rngs/critical.rng +5 -0
  122. data/cockpit/themes/promise/rngs/loop.rng +11 -0
  123. data/cockpit/themes/promise/rngs/manipulate.rng +6 -0
  124. data/cockpit/themes/promise/rngs/parallel.rng +5 -0
  125. data/cockpit/themes/promise/rngs/parallel_branch.rng +8 -0
  126. data/cockpit/themes/promise/symbols/alternative.svg +4 -0
  127. data/cockpit/themes/promise/symbols/call.svg +4 -0
  128. data/cockpit/themes/promise/symbols/callmanipulate.svg +6 -0
  129. data/cockpit/themes/promise/symbols/choose.svg +4 -0
  130. data/cockpit/themes/promise/symbols/choose_exclusive.svg +5 -0
  131. data/cockpit/themes/promise/symbols/choose_inclusive.svg +4 -0
  132. data/cockpit/themes/promise/symbols/critical.svg +4 -0
  133. data/cockpit/themes/promise/symbols/escape.svg +5 -0
  134. data/cockpit/themes/promise/symbols/loop.svg +5 -0
  135. data/cockpit/themes/promise/symbols/manipulate.svg +4 -0
  136. data/cockpit/themes/promise/symbols/otherwise.svg +4 -0
  137. data/cockpit/themes/promise/symbols/parallel.svg +6 -0
  138. data/cockpit/themes/promise/symbols/parallel_branch.svg +4 -0
  139. data/cockpit/themes/promise/symbols/preminder.svg +6 -0
  140. data/cockpit/themes/promise/symbols/scripts.svg +4 -0
  141. data/cockpit/themes/promise/symbols/start.svg +3 -0
  142. data/cockpit/themes/promise/theme.js +742 -0
  143. data/cpee.gemspec +2 -2
  144. data/lib/cpee/implementation.rb +15 -15
  145. data/server/handlerwrappers/default.rb +19 -19
  146. data/server/handlerwrappers/log.rb +264 -0
  147. data/server/instances/10/properties.xml +148 -0
  148. data/server/instances/11/properties.xml +149 -0
  149. data/server/instances/12/properties.xml +149 -0
  150. data/server/instances/13/properties.xml +149 -0
  151. data/server/instances/14/properties.xml +111 -0
  152. data/server/instances/15/properties.xml +113 -0
  153. data/server/instances/16/properties.xml +113 -0
  154. data/server/instances/17/properties.xml +149 -0
  155. data/server/instances/18/properties.xml +149 -0
  156. data/server/instances/19/properties.xml +114 -0
  157. data/server/instances/2/properties.xml +1 -1
  158. data/server/instances/20/properties.xml +113 -0
  159. data/server/instances/21/notifications/0851248d60c898cadd743d0dd5b6d273/consumer-secret +1 -0
  160. data/server/instances/21/notifications/0851248d60c898cadd743d0dd5b6d273/producer-secret +1 -0
  161. data/server/instances/21/notifications/0851248d60c898cadd743d0dd5b6d273/subscription.xml +6 -0
  162. data/server/instances/21/notifications/b7bac3f3010d433ce5d8f29338a06f9a/consumer-secret +1 -0
  163. data/server/instances/21/notifications/b7bac3f3010d433ce5d8f29338a06f9a/producer-secret +1 -0
  164. data/server/instances/21/notifications/b7bac3f3010d433ce5d8f29338a06f9a/subscription.xml +23 -0
  165. data/server/instances/21/properties.xml +149 -0
  166. data/server/instances/22/properties.xml +113 -0
  167. data/server/instances/23/properties.xml +88 -0
  168. data/server/instances/24/properties.xml +168 -0
  169. data/server/instances/25/properties.xml +149 -0
  170. data/server/instances/26/properties.xml +113 -0
  171. data/server/instances/27/properties.xml +141 -0
  172. data/server/instances/3/properties.xml +46 -0
  173. data/server/instances/4/properties.xml +148 -0
  174. data/server/instances/5/properties.xml +148 -0
  175. data/server/instances/6/properties.xml +148 -0
  176. data/server/instances/7/properties.xml +148 -0
  177. data/server/instances/8/properties.xml +148 -0
  178. data/server/instances/9/properties.xml +46 -0
  179. data/server/resources/properties.init +2 -1
  180. data/server/resources/transformation_dslx.xsl +12 -12
  181. data/server/server.pid +1 -0
  182. data/server/server.rb +2 -0
  183. metadata +152 -12
  184. data/cockpit/js/wfadaptor.cpee.js +0 -936
  185. data/cockpit/rngtest1.html +0 -53
  186. data/cockpit/rngtest1.rng +0 -38
  187. data/cockpit/rngtest1.xml +0 -16
  188. data/cockpit/rngtest2.html +0 -53
  189. data/cockpit/rngtest2.xml +0 -11
  190. data/cockpit/test.html +0 -46
@@ -0,0 +1,8 @@
1
+ <element rngui:version="1.2" name="value" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org">
2
+ <zeroOrMore rngui:label="Create Attributes">
3
+ <element rngui:label='Name'>
4
+ <anyName/>
5
+ <data type="string" rngui:label="Value"/>
6
+ </element>
7
+ </zeroOrMore>
8
+ </element>
@@ -0,0 +1,8 @@
1
+ <element rngui:version="1.2" name="value" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org">
2
+ <zeroOrMore rngui:label="Create Data Element">
3
+ <element rngui:label='Name'>
4
+ <anyName/>
5
+ <data type="string" rngui:label="Value"/>
6
+ </element>
7
+ </zeroOrMore>
8
+ </element>
@@ -0,0 +1,8 @@
1
+ <element rngui:version="1.2" name="value" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org">
2
+ <zeroOrMore rngui:label="Create Endpoint">
3
+ <element rngui:label='Name'>
4
+ <anyName/>
5
+ <data type="string" rngui:label="Value"/>
6
+ </element>
7
+ </zeroOrMore>
8
+ </element>
@@ -12,22 +12,22 @@
12
12
  </endpoints>
13
13
  <description xmlns="http://cpee.org/ns/description/1.0">
14
14
  <parallel>
15
- <loop pre_test="data.persons > 0">
15
+ <loop mode="pre_test" condition="data.persons > 0">
16
16
  <parallel_branch pass="data.persons" local="p">
17
17
  <call id="a2" endpoint="bookHotel">
18
18
  <parameters>
19
19
  <method>:post</method>
20
- <parameters>
20
+ <arguments>
21
21
  <to>"Vienna"</to>
22
- </parameters>
22
+ </arguments>
23
23
  </parameters>
24
24
  <finalize output="result"> data.hotels &lt;&lt; result.value('id')
25
25
  data.costs += result.value('costs').to_f</finalize>
26
26
  </call>
27
27
  </parallel_branch>
28
- <manipulate id="a3"> data.persons -= 1</manipulate>
29
- </loop>
30
- </parallel>
28
+ <manipulate id="a3"> data.persons -= 1</manipulate>
29
+ </loop>
30
+ </parallel>
31
31
  </description>
32
32
  <transformation>
33
33
  <description type='copy'/>
@@ -21,47 +21,47 @@
21
21
  <call id="a1" endpoint="bookAir">
22
22
  <parameters>
23
23
  <method>:post</method>
24
- <parameters>
24
+ <arguments>
25
25
  <from>data.from</from>
26
26
  <to>data.to</to>
27
27
  <persons>data.persons</persons>
28
- </parameters>
28
+ </arguments>
29
29
  </parameters>
30
30
  <finalize output="result"> data.airline = result.value('id')
31
31
  data.costs += result.value('costs').to_f
32
32
  status.update 1, 'Hotel'</finalize>
33
33
  </call>
34
34
  <parallel>
35
- <loop pre_test="data.persons > 0">
35
+ <loop mode="pre_test" condition="data.persons > 0">
36
36
  <parallel_branch pass="data.persons" local="p">
37
37
  <call id="a2" endpoint="bookHotel">
38
38
  <parameters>
39
39
  <method>:post</method>
40
- <parameters>
40
+ <arguments>
41
41
  <to>data.to</to>
42
- </parameters>
42
+ </arguments>
43
43
  </parameters>
44
44
  <finalize output="result"> data.hotels &lt;&lt; result.value('id')
45
45
  data.costs += result.value('costs').to_f</finalize>
46
46
  </call>
47
47
  </parallel_branch>
48
- <manipulate id="a3"> data.persons -= 1</manipulate>
49
- </loop>
50
- </parallel>
48
+ <manipulate id="a3"> data.persons -= 1</manipulate>
49
+ </loop>
50
+ </parallel>
51
51
  <choose>
52
52
  <alternative condition="data.costs > 700">
53
53
  <call id="a4" endpoint="approve">
54
54
  <parameters>
55
55
  <method>:post</method>
56
- <parameters>
56
+ <arguments>
57
57
  <costs>data.costs</costs>
58
- </parameters>
58
+ </arguments>
59
59
  </parameters>
60
- </call>
60
+ </call>
61
61
  </alternative>
62
62
  </choose>
63
63
  </description>
64
- </description>
64
+ </description>
65
65
  <transformation>
66
66
  <description type='copy'/>
67
67
  <dataelements type='rest'/>
@@ -7,67 +7,67 @@
7
7
  </dataelements>
8
8
  <endpoints>
9
9
  <timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
10
- </endpoints>
10
+ </endpoints>
11
11
  <description>
12
12
  <description xmlns="http://cpee.org/ns/description/1.0">
13
13
  <parallel>
14
14
  <parallel_branch>
15
- <loop pre_test='data.feedback'>
15
+ <loop mode="pre_test" condition='data.feedback'>
16
16
  <call id="design" endpoint="timeout">
17
- <parameters><!--{{{-->
17
+ <parameters><!--{{{-->
18
18
  <method>:post</method>
19
- <parameters>
19
+ <arguments>
20
20
  <timeout>4</timeout>
21
- </parameters>
21
+ </arguments>
22
22
  </parameters><!--}}}-->
23
- </call>
23
+ </call>
24
24
  <call id="validate" endpoint="timeout">
25
- <parameters><!--{{{-->
25
+ <parameters><!--{{{-->
26
26
  <method>:post</method>
27
- <parameters>
27
+ <arguments>
28
28
  <timeout>2</timeout>
29
- </parameters>
29
+ </arguments>
30
30
  </parameters><!--}}}-->
31
- </call>
31
+ </call>
32
32
  <call id="publish" endpoint="timeout">
33
- <parameters><!--{{{-->
33
+ <parameters><!--{{{-->
34
34
  <method>:post</method>
35
- <parameters>
35
+ <arguments>
36
36
  <timeout>1</timeout>
37
- </parameters>
37
+ </arguments>
38
38
  </parameters><!--}}}-->
39
- </call>
39
+ </call>
40
40
  </loop>
41
41
  </parallel_branch>
42
42
  <parallel_branch>
43
- <loop pre_test='data.feedback'>
43
+ <loop mode="pre_test" condition='data.feedback'>
44
44
  <call id="prepare" endpoint="timeout">
45
- <parameters><!--{{{-->
45
+ <parameters><!--{{{-->
46
46
  <method>:post</method>
47
- <parameters>
47
+ <arguments>
48
48
  <timeout>4</timeout>
49
- </parameters>
49
+ </arguments>
50
50
  </parameters><!--}}}-->
51
- </call>
51
+ </call>
52
52
  <call id="fab" endpoint="timeout">
53
- <parameters><!--{{{-->
53
+ <parameters><!--{{{-->
54
54
  <method>:post</method>
55
- <parameters>
55
+ <arguments>
56
56
  <timeout>4</timeout>
57
- </parameters>
57
+ </arguments>
58
58
  </parameters><!--}}}-->
59
59
  </call>
60
60
  <call id="evaluate" endpoint="timeout">
61
- <parameters><!--{{{-->
61
+ <parameters><!--{{{-->
62
62
  <method>:post</method>
63
- <parameters>
63
+ <arguments>
64
64
  <timeout>4</timeout>
65
- </parameters>
65
+ </arguments>
66
66
  </parameters><!--}}}-->
67
67
  </call>
68
- </loop>
68
+ </loop>
69
69
  </parallel_branch>
70
- </parallel>
70
+ </parallel>
71
71
  </description>
72
72
  </description>
73
73
  <transformation>
@@ -7,14 +7,14 @@
7
7
  <manipulate id="man">
8
8
  data.pid = Digest::MD5.hexdigest(Kernel::rand().to_s)
9
9
  </manipulate>
10
- <loop pre_test="data.progress != 'END'">
10
+ <loop mode="pre_test" condition="data.progress != 'END'">
11
11
  <call id="a4" endpoint="infinity">
12
12
  <parameters>
13
13
  <label>"Warten auf Fortschritt"</label>
14
14
  <method>:post</method>
15
- <parameters>
16
- <pid>data.pid</pid>
17
- </parameters>
15
+ <arguments>
16
+ <pid>data.pid</pid>
17
+ </arguments>
18
18
  </parameters>
19
19
  <finalize>data.progress = result["progress"]</finalize>
20
20
  </call>
@@ -16,30 +16,30 @@
16
16
  <call id="a1" endpoint="timeout">
17
17
  <parameters><!--{{{-->
18
18
  <method>:post</method>
19
- <parameters>
19
+ <arguments>
20
20
  <timeout>2</timeout>
21
- </parameters>
21
+ </arguments>
22
22
  </parameters><!--}}}-->
23
- <finalize output="result"> data.x += "a1,"</finalize>
24
- </call>
23
+ <finalize output="result"> data.x += "a1,"</finalize>
24
+ </call>
25
25
  <call id="a2" endpoint="timeout">
26
26
  <parameters><!--{{{-->
27
27
  <method>:post</method>
28
- <parameters>
28
+ <arguments>
29
29
  <timeout>4</timeout>
30
- </parameters>
30
+ </arguments>
31
31
  </parameters><!--}}}-->
32
32
  <finalize output="result"> data.x += "a2,"</finalize>
33
33
  </call>
34
34
  <call id="a3" endpoint="timeout">
35
35
  <parameters><!--{{{-->
36
36
  <method>:post</method>
37
- <parameters>
37
+ <arguments>
38
38
  <timeout>4</timeout>
39
- </parameters>
39
+ </arguments>
40
40
  </parameters><!--}}}-->
41
- <finalize output="result"> data.x += "a3,"</finalize>
42
- </call>
41
+ <finalize output="result"> data.x += "a3,"</finalize>
42
+ </call>
43
43
  </description><!--}}}-->
44
44
  </description>
45
45
  <transformation>
@@ -8,62 +8,62 @@
8
8
  </dataelements>
9
9
  <endpoints>
10
10
  <timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
11
- </endpoints>
11
+ </endpoints>
12
12
  <description>
13
13
  <description xmlns="http://cpee.org/ns/description/1.0">
14
14
  <call id="a1" endpoint="timeout">
15
15
  <parameters><!--{{{-->
16
16
  <method>:post</method>
17
- <parameters>
17
+ <arguments>
18
18
  <timeout>4</timeout>
19
19
  <bug>data.nasty</bug>
20
- </parameters>
20
+ </arguments>
21
21
  </parameters><!--}}}-->
22
- <finalize output="result"> data.x += "done"</finalize>
23
- </call>
22
+ <finalize output="result"> data.x += "done"</finalize>
23
+ </call>
24
24
  <parallel wait="2">
25
25
  <parallel_branch>
26
26
  <call id="a2_1" endpoint="timeout">
27
- <parameters><!--{{{-->
27
+ <parameters><!--{{{-->
28
28
  <method>:post</method>
29
- <parameters>
29
+ <arguments>
30
30
  <timeout>6</timeout>
31
- </parameters>
31
+ </arguments>
32
32
  </parameters><!--}}}-->
33
- </call>
33
+ </call>
34
34
  </parallel_branch>
35
35
  <parallel_branch>
36
36
  <call id="a2_2" endpoint="timeout">
37
37
  <parameters><!--{{{-->
38
38
  <method>:post</method>
39
- <parameters>
39
+ <arguments>
40
40
  <timeout>2</timeout>
41
- </parameters>
41
+ </arguments>
42
42
  </parameters><!--}}}-->
43
- </call>
43
+ </call>
44
44
  </parallel_branch>
45
- </parallel>
46
- <manipulate id="a3"> data.x += '_end'</manipulate>
45
+ </parallel>
46
+ <manipulate id="a3"> data.x += '_end'</manipulate>
47
47
  <choose>
48
48
  <alternative condition="data.x != nil">
49
49
  <call id="a4_1" endpoint="timeout">
50
50
  <parameters><!--{{{-->
51
51
  <method>:post</method>
52
- <parameters>
52
+ <arguments>
53
53
  <timeout>4</timeout>
54
- </parameters>
54
+ </arguments>
55
55
  </parameters><!--}}}-->
56
- </call>
56
+ </call>
57
57
  </alternative>
58
58
  <otherwise>
59
59
  <call id="a4_2" endpoint="timeout">
60
60
  <parameters><!--{{{-->
61
61
  <method>:post</method>
62
- <parameters>
62
+ <arguments>
63
63
  <timeout>10</timeout>
64
- </parameters>
64
+ </arguments>
65
65
  </parameters><!--}}}-->
66
- </call>
66
+ </call>
67
67
  </otherwise>
68
68
  </choose>
69
69
  </description>
@@ -21,39 +21,39 @@
21
21
  <call id="a1" endpoint="bookAir">
22
22
  <parameters>
23
23
  <method>:post</method>
24
- <parameters>
24
+ <arguments>
25
25
  <from>data.from</from>
26
26
  <to>data.to</to>
27
27
  <persons>data.persons</persons>
28
- </parameters>
28
+ </arguments>
29
29
  </parameters>
30
30
  <finalize output="result"> data.airline = result.value('id')
31
31
  data.costs += result.value('costs').to_f</finalize>
32
32
  </call>
33
33
  <parallel>
34
- <loop pre_test="data.persons > 0">
34
+ <loop mode="pre_test" condition="data.persons > 0">
35
35
  <parallel_branch pass="data.persons" local="p">
36
36
  <call id="a2" endpoint="bookHotel">
37
37
  <parameters>
38
38
  <method>:post</method>
39
- <parameters>
39
+ <arguments>
40
40
  <to>data.to</to>
41
- </parameters>
41
+ </arguments>
42
42
  </parameters>
43
43
  <finalize output="result"> data.hotels &lt;&lt; result.value('id')
44
44
  data.costs += result.value('costs').to_f</finalize>
45
45
  </call>
46
46
  </parallel_branch>
47
- <manipulate id="a3"> data.persons -= 1</manipulate>
48
- </loop>
49
- <loop pre_test="data.persons > 0">
47
+ <manipulate id="a3"> data.persons -= 1</manipulate>
48
+ </loop>
49
+ <loop mode="pre_test" condition="data.persons > 0">
50
50
  <parallel_branch pass="data.persons" local="p">
51
51
  <call id="a4" endpoint="bookHotel">
52
52
  <parameters>
53
53
  <method>:post</method>
54
- <parameters>
54
+ <arguments>
55
55
  <to>data.to</to>
56
- </parameters>
56
+ </arguments>
57
57
  </parameters>
58
58
  <finalize output="result"> data.hotels &lt;&lt; result.value('id')
59
59
  data.costs += result.value('costs').to_f</finalize>
@@ -63,27 +63,27 @@
63
63
  <call id="a5" endpoint="bookHotel">
64
64
  <parameters>
65
65
  <method>:post</method>
66
- <parameters>
66
+ <arguments>
67
67
  <to>data.to</to>
68
- </parameters>
68
+ </arguments>
69
69
  </parameters>
70
70
  <finalize output="result"> data.hotels &lt;&lt; result.value('id')
71
71
  data.costs += result.value('costs').to_f</finalize>
72
72
  </call>
73
73
  </parallel_branch>
74
- <manipulate id="a6"> data.persons -= 1</manipulate>
75
- </loop>
76
- </parallel>
74
+ <manipulate id="a6"> data.persons -= 1</manipulate>
75
+ </loop>
76
+ </parallel>
77
77
  <choose>
78
78
  <alternative condition="data.costs > 700">
79
79
  <call id="a7" endpoint="approve">
80
80
  <parameters>
81
81
  <method>:post</method>
82
- <parameters>
82
+ <arguments>
83
83
  <costs>data.costs</costs>
84
- </parameters>
84
+ </arguments>
85
85
  </parameters>
86
- </call>
86
+ </call>
87
87
  </alternative>
88
88
  </choose>
89
89
  </description>
@@ -0,0 +1,258 @@
1
+ <?xml version="1.0"?>
2
+ <testset>
3
+ <dataelements/>
4
+ <handlerwrapper>PromiseHandlerWrapper</handlerwrapper>
5
+ <endpoints>
6
+ <timeout xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/timeout</timeout>
7
+ <timeout1 xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/timeout/1</timeout1>
8
+ <timeout2 xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/timeout/16</timeout2>
9
+ <timeout3 xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/timeout/41</timeout3>
10
+ <preminder1 xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/preminder/1</preminder1>
11
+ <preminder2 xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/preminder/2</preminder2>
12
+ <sreminder1 xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/sreminder/1</sreminder1>
13
+ <sreminder2 xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/sreminder/2</sreminder2>
14
+ <inkasso xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/inkasso</inkasso>
15
+ <customer xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/customer</customer>
16
+ <credit xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/credit</credit>
17
+ <credit_worthy xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/credit/worthy</credit_worthy>
18
+ <activation xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/activation</activation>
19
+ <zaehler xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/zaehler</zaehler>
20
+ <update xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/update</update>
21
+ <consume xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/consume</consume>
22
+ <decide xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/decide</decide>
23
+ <credit_consume xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/credit/consume</credit_consume>
24
+ <credit_activate xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://promise.wst.univie.ac.at:9301/credit/activate</credit_activate>
25
+ </endpoints>
26
+ <attributes>
27
+ <theme>promise</theme>
28
+ </attributes>
29
+ <positions/>
30
+ <description>
31
+ <description xmlns="http://cpee.org/ns/description/1.0">
32
+ <call id="a20" endpoint="customer" svg-label="Generate Customer">
33
+ <parameters>
34
+ <label>"Generate Customer"</label>
35
+ <method>:post</method>
36
+ <arguments/>
37
+ </parameters>
38
+ <finalize>data.knr=result[0].value;data.status="normal";data.zaehlerid=result[1].value</finalize>
39
+ </call>
40
+ <call id="a10" endpoint="sreminder1" svg-label="Sendung erste Mahnung">
41
+ <parameters>
42
+ <label>"Sendung erste Mahnung"</label>
43
+ <method>:post</method>
44
+ <arguments>
45
+ <knr>data.knr</knr>
46
+ </arguments>
47
+ <type>:task</type>
48
+ <mid>'sid-5CD9191C-7233-414F-8EF4-A4E1A8D39E07'</mid>
49
+ </parameters>
50
+ </call>
51
+ <parallel wait="1" svg-label="">
52
+ <parallel_branch svg-label="">
53
+ <manipulate id="a16" svg-label=""> sleep 2 </manipulate>
54
+ <call id="a14" endpoint="timeout1" svg-label="2-woechige Frist">
55
+ <parameters>
56
+ <label>"2-woechige Frist"</label>
57
+ <method>:post</method>
58
+ <arguments>
59
+ <timeout>2</timeout>
60
+ </arguments>
61
+ </parameters>
62
+ </call>
63
+ <call id="a11" endpoint="sreminder2" svg-label="Senden zweite Mahnung">
64
+ <parameters>
65
+ <label>"Senden zweite Mahnung"</label>
66
+ <method>:post</method>
67
+ <arguments>
68
+ <knr>data.knr</knr>
69
+ </arguments>
70
+ <type>:task</type>
71
+ <mid>'sid-8417E18E-016C-4F87-86FC-216475C1C029'</mid>
72
+ </parameters>
73
+ </call>
74
+ <parallel wait="1" svg-label="">
75
+ <parallel_branch svg-label="">
76
+ <manipulate id="a21" svg-label="">sleep 2 </manipulate>
77
+ <call id="a7" endpoint="timeout2" svg-label="2-woechige Frist">
78
+ <parameters>
79
+ <label>"2-woechige Frist"</label>
80
+ <method>:post</method>
81
+ <arguments>
82
+ <timeout>2</timeout>
83
+ </arguments>
84
+ </parameters>
85
+ </call>
86
+ <call id="a1" endpoint="inkasso" svg-label="Registrierung als Inkassokunde">
87
+ <parameters>
88
+ <label>"Registrierung als Inkassokunde"</label>
89
+ <method>:put</method>
90
+ <arguments>
91
+ <status>data.status</status>
92
+ </arguments>
93
+ </parameters>
94
+ <finalize>data.status=result[0].value;data.zaehler_status='normal'</finalize>
95
+ </call>
96
+ <parallel wait="-1" svg-label="">
97
+ <parallel_branch svg-label="">
98
+ <call id="a4" endpoint="activation" svg-label="Aktivierung Register fuer Guthaben und Anzeige am Display (Prepayment)">
99
+ <parameters>
100
+ <label>"Aktivierung Register fuer Guthaben und Anzeige am Display (Prepayment)"</label>
101
+ <method>:post</method>
102
+ <type>:task</type>
103
+ <mid>'sid-032C8450-4DF9-435B-8105-F0C13734A7A8'</mid>
104
+ <arguments>
105
+ <knr>data.knr</knr>
106
+ </arguments>
107
+ </parameters>
108
+ </call>
109
+ </parallel_branch>
110
+ <parallel_branch svg-label="">
111
+ <call id="a2" endpoint="inkasso" svg-label="Umparametrierung des Zaehlers von Normal- auf Inkassobetrieb">
112
+ <parameters>
113
+ <label>"Umparametrierung des Zaehlers von Normal- auf Inkassobetrieb"</label>
114
+ <method>:put</method>
115
+ <arguments>
116
+ <zaehlerid>data.zaehlerid</zaehlerid>
117
+ <status>data.zaehler_status</status>
118
+ </arguments>
119
+ </parameters>
120
+ <finalize>data.zaehler_status=result[0].value</finalize>
121
+ </call>
122
+ </parallel_branch>
123
+ </parallel>
124
+ <call id="a6" endpoint="update" svg-label="Aktualisierung Guthaben">
125
+ <parameters>
126
+ <label>"Aktualisierung Guthaben"</label>
127
+ <method>:post</method>
128
+ <arguments/>
129
+ </parameters>
130
+ <finalize>data.wartefrist="ok";data.guthaben=result[0].value.to_i</finalize>
131
+ </call>
132
+ <call id="a3" endpoint="timeout3" svg-label="Aufladen">
133
+ <parameters>
134
+ <label>"Aufladen"</label>
135
+ <method>:post</method>
136
+ <arguments/>
137
+ </parameters>
138
+ <finalize>p data.guthaben</finalize>
139
+ </call>
140
+ <loop mode="pre_test" condition="data.wartefrist!='verstrichen'" svg-label="">
141
+ <loop mode="pre_test" condition="data.guthaben&gt;0" svg-label="">
142
+ <call id="a5" endpoint="consume" svg-label="Verbrauchen">
143
+ <parameters>
144
+ <label>"Verbrauchen"</label>
145
+ <method>:post</method>
146
+ <arguments>
147
+ <knr>data.knr</knr>
148
+ </arguments>
149
+ </parameters>
150
+ <finalize>data.guthaben=data.guthaben-result[0].value.to_i</finalize>
151
+ </call>
152
+ </loop>
153
+ <call id="a13" endpoint="decide" svg-label="Gesetzl. Frist">
154
+ <parameters>
155
+ <label>"Gesetzl. Frist"</label>
156
+ <method>:post</method>
157
+ <arguments>
158
+ <knr>data.knr</knr>
159
+ </arguments>
160
+ </parameters>
161
+ <finalize>data.wartefrist="verstrichen" if result[0].name == 'wartefrist';data.guthaben=result[0].value.to_i if result[0].name == "balance"</finalize>
162
+ </call>
163
+ </loop>
164
+ <call id="a17" endpoint="timeout" svg-label="Abschaltung">
165
+ <parameters>
166
+ <label>"Abschaltung"</label>
167
+ <method>:post</method>
168
+ <arguments>
169
+ <knr>data.knr</knr>
170
+ </arguments>
171
+ </parameters>
172
+ <finalize>data.zaehler_status='off'</finalize>
173
+ </call>
174
+ <call id="a8" endpoint="credit_worthy" svg-label="Kreditwuerdig">
175
+ <parameters>
176
+ <label>"Kreditwuerdig"</label>
177
+ <method>:post</method>
178
+ <arguments>
179
+ <knr>data.knr</knr>
180
+ </arguments>
181
+ </parameters>
182
+ <finalize>data.kreditf=result[0].value;data.kredit_wanted="true"</finalize>
183
+ </call>
184
+ <choose mode="exclusive" svg-label="">
185
+ <alternative condition="data.kreditf=='true'" svg-label="">
186
+ <call id="a12" endpoint="timeout" svg-label="activate parametrizable credit function and credit offer">
187
+ <parameters>
188
+ <label>"activate parametrizable credit function and credit offer"</label>
189
+ <method>:post</method>
190
+ <arguments>
191
+ <knr>data.knr</knr>
192
+ </arguments>
193
+ </parameters>
194
+ </call>
195
+ <choose mode="exclusive" svg-label="">
196
+ <alternative condition="data.kredit_wanted=='true'" svg-label="">
197
+ <call id="a18" endpoint="credit_activate" svg-label="activate meter">
198
+ <parameters>
199
+ <label>"activate meter"</label>
200
+ <method>:post</method>
201
+ <arguments>
202
+ <knr>knr=data.knr</knr>
203
+ </arguments>
204
+ </parameters>
205
+ <finalize>data.kredit=result[0].value.to_i</finalize>
206
+ </call>
207
+ <loop mode="pre_test" condition="data.kredit&gt;0" svg-label="">
208
+ <call id="a19" endpoint="credit_consume" svg-label="Consume credit">
209
+ <parameters>
210
+ <label>"Consume credit"</label>
211
+ <method>:post</method>
212
+ <arguments>
213
+ <knr>knr=data.knr</knr>
214
+ </arguments>
215
+ </parameters>
216
+ <finalize>data.kredit=data.kredit-result[0].value.to_i</finalize>
217
+ </call>
218
+ </loop>
219
+ </alternative>
220
+ <otherwise svg-label=""/>
221
+ </choose>
222
+ </alternative>
223
+ <otherwise svg-label=""/>
224
+ </choose>
225
+ </parallel_branch>
226
+ <parallel_branch svg-label="">
227
+ <call id="a9" endpoint="preminder2" svg-label="Kunde zahlt">
228
+ <parameters>
229
+ <label>"Kunde zahlt"</label>
230
+ <method>:post</method>
231
+ <arguments/>
232
+ </parameters>
233
+ </call>
234
+ </parallel_branch>
235
+ </parallel>
236
+ </parallel_branch>
237
+ <parallel_branch svg-label="">
238
+ <call id="a15" endpoint="preminder1" svg-label="Kunde zahlt">
239
+ <parameters>
240
+ <label>"Kunde zahlt"</label>
241
+ <method>:post</method>
242
+ <arguments/>
243
+ </parameters>
244
+ </call>
245
+ </parallel_branch>
246
+ </parallel>
247
+ </description>
248
+ </description>
249
+ <transformation>
250
+ <description type="copy"/>
251
+ <dataelements type="none"/>
252
+ <endpoints type="none"/>
253
+ </transformation>
254
+ <attributes>
255
+ <info xmlns="http://riddl.org/ns/common-patterns/properties/1.0">ss</info>
256
+ <modeltype xmlns="http://riddl.org/ns/common-patterns/properties/1.0">CPEE</modeltype>
257
+ </attributes>
258
+ </testset>