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,111 @@
1
+ <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
2
+ <attributes>
3
+ <info>Enter info here</info>
4
+ <modeltype>CPEE</modeltype>
5
+ <theme>default</theme>
6
+ </attributes>
7
+ <state>ready</state>
8
+ <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
9
+ <positions>
10
+ <a1>after</a1>
11
+ </positions>
12
+ <dataelements>
13
+ <x/>
14
+ </dataelements>
15
+ <endpoints>
16
+ <timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
17
+ </endpoints>
18
+ <dsl>call :a1, :timeout, parameters: { }
19
+ call :a2, :timeout, parameters: { :method =&gt; :post, :arguments =&gt; {:timeout =&gt; 4} }, finalize: &lt;&lt;-END
20
+ data.x += "a2,"
21
+ END
22
+ call :a3, :timeout, parameters: { :method =&gt; :post, :arguments =&gt; {:timeout =&gt; 4} }, finalize: &lt;&lt;-END
23
+ data.x += "a3,"
24
+ END
25
+ </dsl>
26
+ <dslx>
27
+ <description xmlns="http://cpee.org/ns/description/1.0">
28
+ <!--{{{-->
29
+ <call xmlns="" id="a1" endpoint="timeout">
30
+ <parameters>
31
+ <label/>
32
+ <method>:post</method>
33
+ <arguments>
34
+ <timeout>223</timeout>
35
+ </arguments>
36
+ </parameters>
37
+ <finalize output="result"> data.x += "a1,"</finalize>
38
+ <update output="result"/>
39
+ </call>
40
+ <call id="a2" endpoint="timeout" svg-label="">
41
+ <parameters>
42
+ <!--{{{-->
43
+ <method>:post</method>
44
+ <arguments>
45
+ <timeout>4</timeout>
46
+ </arguments>
47
+ </parameters>
48
+ <!--}}}-->
49
+ <finalize output="result"> data.x += "a2,"</finalize>
50
+ </call>
51
+ <call id="a3" endpoint="timeout" svg-label="">
52
+ <parameters>
53
+ <!--{{{-->
54
+ <method>:post</method>
55
+ <arguments>
56
+ <timeout>4</timeout>
57
+ </arguments>
58
+ </parameters>
59
+ <!--}}}-->
60
+ <finalize output="result"> data.x += "a3,"</finalize>
61
+ </call>
62
+ </description>
63
+ </dslx>
64
+ <status>
65
+ <id>0</id>
66
+ <message>undefined</message>
67
+ </status>
68
+ <description>
69
+ <description xmlns="http://cpee.org/ns/description/1.0">
70
+ <!--{{{-->
71
+ <call xmlns="" id="a1" endpoint="timeout">
72
+ <parameters>
73
+ <label/>
74
+ <method>:post</method>
75
+ <arguments>
76
+ <timeout>223</timeout>
77
+ </arguments>
78
+ </parameters>
79
+ <finalize output="result"> data.x += "a1,"</finalize>
80
+ <update output="result"/>
81
+ </call>
82
+ <call id="a2" endpoint="timeout" svg-label="">
83
+ <parameters>
84
+ <!--{{{-->
85
+ <method>:post</method>
86
+ <arguments>
87
+ <timeout>4</timeout>
88
+ </arguments>
89
+ </parameters>
90
+ <!--}}}-->
91
+ <finalize output="result"> data.x += "a2,"</finalize>
92
+ </call>
93
+ <call id="a3" endpoint="timeout" svg-label="">
94
+ <parameters>
95
+ <!--{{{-->
96
+ <method>:post</method>
97
+ <arguments>
98
+ <timeout>4</timeout>
99
+ </arguments>
100
+ </parameters>
101
+ <!--}}}-->
102
+ <finalize output="result"> data.x += "a3,"</finalize>
103
+ </call>
104
+ </description>
105
+ </description>
106
+ <transformation>
107
+ <description type="copy"/>
108
+ <dataelements type="rest"/>
109
+ <endpoints type="rest"/>
110
+ </transformation>
111
+ </properties>
@@ -0,0 +1,113 @@
1
+ <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
2
+ <attributes>
3
+ <info>Enter info here</info>
4
+ <modeltype>CPEE</modeltype>
5
+ <theme>default</theme>
6
+ </attributes>
7
+ <state>ready</state>
8
+ <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
9
+ <positions>
10
+ <a1>after</a1>
11
+ </positions>
12
+ <dataelements>
13
+ <x/>
14
+ </dataelements>
15
+ <endpoints>
16
+ <timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
17
+ </endpoints>
18
+ <dsl>call :a1, :timeout, parameters: { :label =&gt; nil, :method =&gt; :get, :arguments =&gt; {:timeout =&gt; 2} }, finalize: &lt;&lt;-END, update: &lt;&lt;-END
19
+ data.x += "a1,"
20
+ END
21
+ call :a2, :timeout, parameters: { :method =&gt; :post, :arguments =&gt; {:timeout =&gt; 4} }, finalize: &lt;&lt;-END
22
+ data.x += "a2,"
23
+ END
24
+ call :a3, :timeout, parameters: { :method =&gt; :post, :arguments =&gt; {:timeout =&gt; 4} }, finalize: &lt;&lt;-END
25
+ data.x += "a3,"
26
+ END
27
+ </dsl>
28
+ <dslx>
29
+ <description xmlns="http://cpee.org/ns/description/1.0">
30
+ <!--{{{-->
31
+ <call id="a1" endpoint="timeout">
32
+ <parameters>
33
+ <label/>
34
+ <method>:get</method>
35
+ <arguments>
36
+ <timeout>2</timeout>
37
+ </arguments>
38
+ </parameters>
39
+ <finalize output="result"> data.x += "a1,"</finalize>
40
+ <update output="result"/>
41
+ </call>
42
+ <call id="a2" endpoint="timeout" svg-label="">
43
+ <parameters>
44
+ <!--{{{-->
45
+ <method>:post</method>
46
+ <arguments>
47
+ <timeout>4</timeout>
48
+ </arguments>
49
+ </parameters>
50
+ <!--}}}-->
51
+ <finalize output="result"> data.x += "a2,"</finalize>
52
+ </call>
53
+ <call id="a3" endpoint="timeout" svg-label="">
54
+ <parameters>
55
+ <!--{{{-->
56
+ <method>:post</method>
57
+ <arguments>
58
+ <timeout>4</timeout>
59
+ </arguments>
60
+ </parameters>
61
+ <!--}}}-->
62
+ <finalize output="result"> data.x += "a3,"</finalize>
63
+ </call>
64
+ </description>
65
+ </dslx>
66
+ <status>
67
+ <id>0</id>
68
+ <message>undefined</message>
69
+ </status>
70
+ <description>
71
+ <description xmlns="http://cpee.org/ns/description/1.0">
72
+ <!--{{{-->
73
+ <call id="a1" endpoint="timeout">
74
+ <parameters>
75
+ <label/>
76
+ <method>:get</method>
77
+ <arguments>
78
+ <timeout>2</timeout>
79
+ </arguments>
80
+ </parameters>
81
+ <finalize output="result"> data.x += "a1,"</finalize>
82
+ <update output="result"/>
83
+ </call>
84
+ <call id="a2" endpoint="timeout" svg-label="">
85
+ <parameters>
86
+ <!--{{{-->
87
+ <method>:post</method>
88
+ <arguments>
89
+ <timeout>4</timeout>
90
+ </arguments>
91
+ </parameters>
92
+ <!--}}}-->
93
+ <finalize output="result"> data.x += "a2,"</finalize>
94
+ </call>
95
+ <call id="a3" endpoint="timeout" svg-label="">
96
+ <parameters>
97
+ <!--{{{-->
98
+ <method>:post</method>
99
+ <arguments>
100
+ <timeout>4</timeout>
101
+ </arguments>
102
+ </parameters>
103
+ <!--}}}-->
104
+ <finalize output="result"> data.x += "a3,"</finalize>
105
+ </call>
106
+ </description>
107
+ </description>
108
+ <transformation>
109
+ <description type="copy"/>
110
+ <dataelements type="rest"/>
111
+ <endpoints type="rest"/>
112
+ </transformation>
113
+ </properties>
@@ -0,0 +1,113 @@
1
+ <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
2
+ <attributes>
3
+ <info>Enter info here</info>
4
+ <modeltype>CPEE</modeltype>
5
+ <theme>default</theme>
6
+ </attributes>
7
+ <state>ready</state>
8
+ <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
9
+ <positions>
10
+ <a1>after</a1>
11
+ </positions>
12
+ <dataelements>
13
+ <x/>
14
+ </dataelements>
15
+ <endpoints>
16
+ <timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
17
+ </endpoints>
18
+ <dsl>call :a1, :timeout, parameters: { :method =&gt; :post, :arguments =&gt; {:timeout =&gt; 2} }, finalize: &lt;&lt;-END
19
+ data.x += "a1,"
20
+ END
21
+ call :a2, :timeout, parameters: { :method =&gt; :post, :arguments =&gt; {:timeout =&gt; 4} }, finalize: &lt;&lt;-END
22
+ data.x += "a2,"
23
+ END
24
+ call :a3, :timeout, parameters: { :method =&gt; :post, :arguments =&gt; {:timeout =&gt; 4} }, finalize: &lt;&lt;-END
25
+ data.x += "a3,"
26
+ END
27
+ </dsl>
28
+ <dslx>
29
+ <description xmlns="http://cpee.org/ns/description/1.0">
30
+ <!--{{{-->
31
+ <call id="a1" endpoint="timeout">
32
+ <parameters>
33
+ <!--{{{-->
34
+ <method>:post</method>
35
+ <arguments>
36
+ <timeout>2</timeout>
37
+ </arguments>
38
+ </parameters>
39
+ <!--}}}-->
40
+ <finalize output="result"> data.x += "a1,"</finalize>
41
+ </call>
42
+ <call id="a2" endpoint="timeout">
43
+ <parameters>
44
+ <!--{{{-->
45
+ <method>:post</method>
46
+ <arguments>
47
+ <timeout>4</timeout>
48
+ </arguments>
49
+ </parameters>
50
+ <!--}}}-->
51
+ <finalize output="result"> data.x += "a2,"</finalize>
52
+ </call>
53
+ <call id="a3" endpoint="timeout">
54
+ <parameters>
55
+ <!--{{{-->
56
+ <method>:post</method>
57
+ <arguments>
58
+ <timeout>4</timeout>
59
+ </arguments>
60
+ </parameters>
61
+ <!--}}}-->
62
+ <finalize output="result"> data.x += "a3,"</finalize>
63
+ </call>
64
+ </description>
65
+ </dslx>
66
+ <status>
67
+ <id>0</id>
68
+ <message>undefined</message>
69
+ </status>
70
+ <description>
71
+ <description xmlns="http://cpee.org/ns/description/1.0">
72
+ <!--{{{-->
73
+ <call id="a1" endpoint="timeout">
74
+ <parameters>
75
+ <!--{{{-->
76
+ <method>:post</method>
77
+ <arguments>
78
+ <timeout>2</timeout>
79
+ </arguments>
80
+ </parameters>
81
+ <!--}}}-->
82
+ <finalize output="result"> data.x += "a1,"</finalize>
83
+ </call>
84
+ <call id="a2" endpoint="timeout">
85
+ <parameters>
86
+ <!--{{{-->
87
+ <method>:post</method>
88
+ <arguments>
89
+ <timeout>4</timeout>
90
+ </arguments>
91
+ </parameters>
92
+ <!--}}}-->
93
+ <finalize output="result"> data.x += "a2,"</finalize>
94
+ </call>
95
+ <call id="a3" endpoint="timeout">
96
+ <parameters>
97
+ <!--{{{-->
98
+ <method>:post</method>
99
+ <arguments>
100
+ <timeout>4</timeout>
101
+ </arguments>
102
+ </parameters>
103
+ <!--}}}-->
104
+ <finalize output="result"> data.x += "a3,"</finalize>
105
+ </call>
106
+ </description>
107
+ </description>
108
+ <transformation>
109
+ <description type="copy"/>
110
+ <dataelements type="rest"/>
111
+ <endpoints type="rest"/>
112
+ </transformation>
113
+ </properties>
@@ -0,0 +1,149 @@
1
+ <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
2
+ <attributes>
3
+ <info>Enter info here</info>
4
+ <modeltype>CPEE</modeltype>
5
+ <theme>default</theme>
6
+ </attributes>
7
+ <state>ready</state>
8
+ <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
9
+ <positions/>
10
+ <dataelements>
11
+ <persons>3</persons>
12
+ <card>Visa_12345</card>
13
+ <airline>null</airline>
14
+ <hotels>[]</hotels>
15
+ <from>Vienna</from>
16
+ <to>Prague</to>
17
+ <costs>0</costs>
18
+ </dataelements>
19
+ <endpoints>
20
+ <bookAir>http://gruppe.wst.univie.ac.at/~mangler/services/airline.php</bookAir>
21
+ <bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
22
+ <approve>http://gruppe.wst.univie.ac.at/~mangler/services/approval.php</approve>
23
+ </endpoints>
24
+ <dsl>call :a1, :bookAir, parameters: { :method =&gt; :post, :arguments =&gt; {:from =&gt; data.from, :to =&gt; data.to, :persons =&gt; data.persons} }, finalize: &lt;&lt;-END
25
+ data.airline = result.value('id')
26
+ data.costs += result.value('costs').to_f
27
+ status.update 1, 'Hotel'
28
+ END
29
+ parallel do
30
+ loop pre_test{data.persons &gt; 0} do
31
+ parallel_branch data.persons do |p|
32
+ call :a2, :bookHotel, parameters: { :method =&gt; :post, :arguments =&gt; {:to =&gt; data.to} }, finalize: &lt;&lt;-END
33
+ data.hotels &lt;&lt; result.value('id')
34
+ data.costs += result.value('costs').to_f
35
+ END
36
+ end
37
+ manipulate :a3, &lt;&lt;-END
38
+ data.persons -= 1
39
+ END
40
+ end
41
+ end
42
+ choose :inclusive do
43
+ alternative "data.costs &gt; 700" do
44
+ call :a4, :approve, parameters: { :method =&gt; :post, :arguments =&gt; {:costs =&gt; data.costs} }
45
+ end
46
+ end
47
+ </dsl>
48
+ <dslx>
49
+ <description xmlns="http://cpee.org/ns/description/1.0">
50
+ <call id="a1" endpoint="bookAir">
51
+ <parameters>
52
+ <method>:post</method>
53
+ <arguments>
54
+ <from>data.from</from>
55
+ <to>data.to</to>
56
+ <persons>data.persons</persons>
57
+ </arguments>
58
+ </parameters>
59
+ <finalize output="result"> data.airline = result.value('id')
60
+ data.costs += result.value('costs').to_f
61
+ status.update 1, 'Hotel'</finalize>
62
+ </call>
63
+ <parallel>
64
+ <loop mode="pre_test" condition="data.persons &gt; 0">
65
+ <parallel_branch pass="data.persons" local="p">
66
+ <call id="a2" endpoint="bookHotel">
67
+ <parameters>
68
+ <method>:post</method>
69
+ <arguments>
70
+ <to>data.to</to>
71
+ </arguments>
72
+ </parameters>
73
+ <finalize output="result"> data.hotels &lt;&lt; result.value('id')
74
+ data.costs += result.value('costs').to_f</finalize>
75
+ </call>
76
+ </parallel_branch>
77
+ <manipulate id="a3"> data.persons -= 1</manipulate>
78
+ </loop>
79
+ </parallel>
80
+ <choose>
81
+ <alternative condition="data.costs &gt; 700">
82
+ <call id="a4" endpoint="approve">
83
+ <parameters>
84
+ <method>:post</method>
85
+ <arguments>
86
+ <costs>data.costs</costs>
87
+ </arguments>
88
+ </parameters>
89
+ </call>
90
+ </alternative>
91
+ </choose>
92
+ </description>
93
+ </dslx>
94
+ <status>
95
+ <id>0</id>
96
+ <message>undefined</message>
97
+ </status>
98
+ <description>
99
+ <description xmlns="http://cpee.org/ns/description/1.0">
100
+ <call id="a1" endpoint="bookAir">
101
+ <parameters>
102
+ <method>:post</method>
103
+ <arguments>
104
+ <from>data.from</from>
105
+ <to>data.to</to>
106
+ <persons>data.persons</persons>
107
+ </arguments>
108
+ </parameters>
109
+ <finalize output="result"> data.airline = result.value('id')
110
+ data.costs += result.value('costs').to_f
111
+ status.update 1, 'Hotel'</finalize>
112
+ </call>
113
+ <parallel>
114
+ <loop mode="pre_test" condition="data.persons &gt; 0">
115
+ <parallel_branch pass="data.persons" local="p">
116
+ <call id="a2" endpoint="bookHotel">
117
+ <parameters>
118
+ <method>:post</method>
119
+ <arguments>
120
+ <to>data.to</to>
121
+ </arguments>
122
+ </parameters>
123
+ <finalize output="result"> data.hotels &lt;&lt; result.value('id')
124
+ data.costs += result.value('costs').to_f</finalize>
125
+ </call>
126
+ </parallel_branch>
127
+ <manipulate id="a3"> data.persons -= 1</manipulate>
128
+ </loop>
129
+ </parallel>
130
+ <choose>
131
+ <alternative condition="data.costs &gt; 700">
132
+ <call id="a4" endpoint="approve">
133
+ <parameters>
134
+ <method>:post</method>
135
+ <arguments>
136
+ <costs>data.costs</costs>
137
+ </arguments>
138
+ </parameters>
139
+ </call>
140
+ </alternative>
141
+ </choose>
142
+ </description>
143
+ </description>
144
+ <transformation>
145
+ <description type="copy"/>
146
+ <dataelements type="rest"/>
147
+ <endpoints type="rest"/>
148
+ </transformation>
149
+ </properties>