cpee 1.3.102

Sign up to get free protection for your applications and to get access to all the features.
Files changed (281) hide show
  1. data/AUTHORS +3 -0
  2. data/COPYING +165 -0
  3. data/FEATURES +28 -0
  4. data/INSTALL +23 -0
  5. data/README +7 -0
  6. data/Rakefile +28 -0
  7. data/cockpit/contrib/symbols.svg +224 -0
  8. data/cockpit/contrib/transformation1.xsl +264 -0
  9. data/cockpit/contrib/transformation2.xsl +10 -0
  10. data/cockpit/css/ui.css +155 -0
  11. data/cockpit/index.html +241 -0
  12. data/cockpit/js/details.js +146 -0
  13. data/cockpit/js/instance.js +927 -0
  14. data/cockpit/js/parameters.js +66 -0
  15. data/cockpit/js/ui.js +48 -0
  16. data/cockpit/js/wfadaptor.cpee.js +1082 -0
  17. data/cockpit/lib/contextmenu.css +72 -0
  18. data/cockpit/lib/contextmenu.js +63 -0
  19. data/cockpit/lib/jquery-ui.custom.min.js +259 -0
  20. data/cockpit/lib/jquery-ui.custom.min.txt +16 -0
  21. data/cockpit/lib/jquery.caret.min.js +10 -0
  22. data/cockpit/lib/jquery.min.js +4 -0
  23. data/cockpit/lib/jquery.svgdom.js +281 -0
  24. data/cockpit/lib/parsequery.js +19 -0
  25. data/cockpit/lib/printf.js +368 -0
  26. data/cockpit/lib/strftime.min.js +1 -0
  27. data/cockpit/lib/ui.css +270 -0
  28. data/cockpit/lib/ui.js +60 -0
  29. data/cockpit/lib/underscore.min.js +27 -0
  30. data/cockpit/lib/util.js +53 -0
  31. data/cockpit/lib/wfadaptor-doc/demo1.html +517 -0
  32. data/cockpit/lib/wfadaptor-doc/demo2.html +84 -0
  33. data/cockpit/lib/wfadaptor-doc/index.html +54 -0
  34. data/cockpit/lib/wfadaptor.css +217 -0
  35. data/cockpit/lib/wfadaptor.js +410 -0
  36. data/cockpit/testsets/ADVENTURE Dynamic Order.xml +353 -0
  37. data/cockpit/testsets/ADVENTURE Main Loop.xml +327 -0
  38. data/cockpit/testsets/ADVENTURE Order.xml +424 -0
  39. data/cockpit/testsets/ADVENTURE Performance Test 1.xml +311 -0
  40. data/cockpit/testsets/ADVENTURE Performance Test 2.xml +297 -0
  41. data/cockpit/testsets/Concurrent.xml +315 -0
  42. data/cockpit/testsets/Coopis Testset.xml +346 -0
  43. data/cockpit/testsets/Endpoints and Data Manipulation.xml +359 -0
  44. data/cockpit/testsets/ICSOC Testset.xml +354 -0
  45. data/cockpit/testsets/Linear.xml +328 -0
  46. data/cockpit/testsets/Mangler 1.xml +352 -0
  47. data/cockpit/testsets/Mangler 2.xml +372 -0
  48. data/cockpit/testsets/RESCUE - Book Movie - Local.xml +385 -0
  49. data/cockpit/testsets/RESCUE - Book Movie.xml +385 -0
  50. data/cockpit/testsets/RESCUE - Loop-Parallel Injection.xml +393 -0
  51. data/cockpit/testsets/SOPROMO Test Sonification.xml +356 -0
  52. data/cockpit/testsets/Syncing P34 1.xml +329 -0
  53. data/cockpit/testsets/Syncing P34 2.xml +329 -0
  54. data/cockpit/testsets/Syncing P34 3.xml +329 -0
  55. data/cockpit/testsets/Syncing P34.xml +329 -0
  56. data/cockpit/testsets/TEST - Bad Loop.xml +428 -0
  57. data/cockpit/testsets/TEST - Wrong Positions.xml +470 -0
  58. data/cockpit/testsets/index.xml +24 -0
  59. data/contrib/Screenshot at 2011-09-28 02:38:11.png +0 -0
  60. data/contrib/logo2-small.png +0 -0
  61. data/contrib/logo2.png +0 -0
  62. data/contrib/logo2.svg +7610 -0
  63. data/contrib/logo2a.png +0 -0
  64. data/contrib/logo2a.svg +367 -0
  65. data/cpee.gemspec +24 -0
  66. data/lib/cpee.xml +39 -0
  67. data/lib/cpee/callback.rb +40 -0
  68. data/lib/cpee/controller.rb +440 -0
  69. data/lib/cpee/empty_workflow.rb +24 -0
  70. data/lib/cpee/handler_notifications.rb +46 -0
  71. data/lib/cpee/handler_properties.rb +43 -0
  72. data/lib/cpee/implementation.rb +174 -0
  73. data/lib/engine.xml +85 -0
  74. data/lib/engine/callbacks.rng +41 -0
  75. data/lib/engine/instance-info.rng +41 -0
  76. data/lib/engine/instances.rng +38 -0
  77. data/server/handlerwrappers/default.rb +142 -0
  78. data/server/handlerwrappers/rescue.rb +216 -0
  79. data/server/handlerwrappers/soap.rb +152 -0
  80. data/server/instances/1/notifications/1d41ebf5e52bf039b3c3873fddb8e9bd/consumer-secret +1 -0
  81. data/server/instances/1/notifications/1d41ebf5e52bf039b3c3873fddb8e9bd/producer-secret +1 -0
  82. data/server/instances/1/notifications/1d41ebf5e52bf039b3c3873fddb8e9bd/subscription.xml +27 -0
  83. data/server/instances/1/notifications/66ad546f13c6c7c84f36215c24dd2e6e/consumer-secret +1 -0
  84. data/server/instances/1/notifications/66ad546f13c6c7c84f36215c24dd2e6e/producer-secret +1 -0
  85. data/server/instances/1/notifications/66ad546f13c6c7c84f36215c24dd2e6e/subscription.xml +27 -0
  86. data/server/instances/1/notifications/9f23b768395a19cc1dd6c2d2a243c78e/consumer-secret +1 -0
  87. data/server/instances/1/notifications/9f23b768395a19cc1dd6c2d2a243c78e/producer-secret +1 -0
  88. data/server/instances/1/notifications/9f23b768395a19cc1dd6c2d2a243c78e/subscription.xml +27 -0
  89. data/server/instances/1/notifications/fa690a88cc565dfa53b13ced355cd039/consumer-secret +1 -0
  90. data/server/instances/1/notifications/fa690a88cc565dfa53b13ced355cd039/producer-secret +1 -0
  91. data/server/instances/1/notifications/fa690a88cc565dfa53b13ced355cd039/subscription.xml +5 -0
  92. data/server/instances/1/properties.xml +522 -0
  93. data/server/instances/10/notifications/0867c4a937f882af259137e36d331261/consumer-secret +1 -0
  94. data/server/instances/10/notifications/0867c4a937f882af259137e36d331261/producer-secret +1 -0
  95. data/server/instances/10/notifications/0867c4a937f882af259137e36d331261/subscription.xml +27 -0
  96. data/server/instances/10/notifications/28acb605c56588ec8e47431c1fcf0b20/consumer-secret +1 -0
  97. data/server/instances/10/notifications/28acb605c56588ec8e47431c1fcf0b20/producer-secret +1 -0
  98. data/server/instances/10/notifications/28acb605c56588ec8e47431c1fcf0b20/subscription.xml +27 -0
  99. data/server/instances/10/notifications/31d3f699def1d1e86dc18ef421f718ad/consumer-secret +1 -0
  100. data/server/instances/10/notifications/31d3f699def1d1e86dc18ef421f718ad/producer-secret +1 -0
  101. data/server/instances/10/notifications/31d3f699def1d1e86dc18ef421f718ad/subscription.xml +27 -0
  102. data/server/instances/10/notifications/380b57220000c45342fc56a1ed8e9e3f/consumer-secret +1 -0
  103. data/server/instances/10/notifications/380b57220000c45342fc56a1ed8e9e3f/producer-secret +1 -0
  104. data/server/instances/10/notifications/380b57220000c45342fc56a1ed8e9e3f/subscription.xml +27 -0
  105. data/server/instances/10/notifications/41eeb5d90b513781fb4b440cb97ca7f1/consumer-secret +1 -0
  106. data/server/instances/10/notifications/41eeb5d90b513781fb4b440cb97ca7f1/producer-secret +1 -0
  107. data/server/instances/10/notifications/41eeb5d90b513781fb4b440cb97ca7f1/subscription.xml +27 -0
  108. data/server/instances/10/notifications/4d8c1b3a8dfdacac98144fad072c46d8/consumer-secret +1 -0
  109. data/server/instances/10/notifications/4d8c1b3a8dfdacac98144fad072c46d8/producer-secret +1 -0
  110. data/server/instances/10/notifications/4d8c1b3a8dfdacac98144fad072c46d8/subscription.xml +27 -0
  111. data/server/instances/10/notifications/4dde696cfb001e00a7efbd8e86ba227d/consumer-secret +1 -0
  112. data/server/instances/10/notifications/4dde696cfb001e00a7efbd8e86ba227d/producer-secret +1 -0
  113. data/server/instances/10/notifications/4dde696cfb001e00a7efbd8e86ba227d/subscription.xml +27 -0
  114. data/server/instances/10/notifications/4e1c0065dd95f7c175bbccb874f0baea/consumer-secret +1 -0
  115. data/server/instances/10/notifications/4e1c0065dd95f7c175bbccb874f0baea/producer-secret +1 -0
  116. data/server/instances/10/notifications/4e1c0065dd95f7c175bbccb874f0baea/subscription.xml +27 -0
  117. data/server/instances/10/notifications/6198fb7d6a8249f7820e3e57eeefa8af/consumer-secret +1 -0
  118. data/server/instances/10/notifications/6198fb7d6a8249f7820e3e57eeefa8af/producer-secret +1 -0
  119. data/server/instances/10/notifications/6198fb7d6a8249f7820e3e57eeefa8af/subscription.xml +27 -0
  120. data/server/instances/10/notifications/6aeb90da52abc150f0f0135d8ba2dbac/consumer-secret +1 -0
  121. data/server/instances/10/notifications/6aeb90da52abc150f0f0135d8ba2dbac/producer-secret +1 -0
  122. data/server/instances/10/notifications/6aeb90da52abc150f0f0135d8ba2dbac/subscription.xml +27 -0
  123. data/server/instances/10/notifications/6d77f5bac1eb9d6165394b6bfc9b492a/consumer-secret +1 -0
  124. data/server/instances/10/notifications/6d77f5bac1eb9d6165394b6bfc9b492a/producer-secret +1 -0
  125. data/server/instances/10/notifications/6d77f5bac1eb9d6165394b6bfc9b492a/subscription.xml +27 -0
  126. data/server/instances/10/notifications/7092411a6bb6822f651798fdcd3c4787/consumer-secret +1 -0
  127. data/server/instances/10/notifications/7092411a6bb6822f651798fdcd3c4787/producer-secret +1 -0
  128. data/server/instances/10/notifications/7092411a6bb6822f651798fdcd3c4787/subscription.xml +27 -0
  129. data/server/instances/10/notifications/7ab29bbad4122295c05f9e33fd1e0fc3/consumer-secret +1 -0
  130. data/server/instances/10/notifications/7ab29bbad4122295c05f9e33fd1e0fc3/producer-secret +1 -0
  131. data/server/instances/10/notifications/7ab29bbad4122295c05f9e33fd1e0fc3/subscription.xml +27 -0
  132. data/server/instances/10/notifications/7fabcecc57fe0bd27ce50bedaef47bd2/consumer-secret +1 -0
  133. data/server/instances/10/notifications/7fabcecc57fe0bd27ce50bedaef47bd2/producer-secret +1 -0
  134. data/server/instances/10/notifications/7fabcecc57fe0bd27ce50bedaef47bd2/subscription.xml +27 -0
  135. data/server/instances/10/notifications/85760dad8f7abbd73ae1dd44140dabf1/consumer-secret +1 -0
  136. data/server/instances/10/notifications/85760dad8f7abbd73ae1dd44140dabf1/producer-secret +1 -0
  137. data/server/instances/10/notifications/85760dad8f7abbd73ae1dd44140dabf1/subscription.xml +27 -0
  138. data/server/instances/10/notifications/8b9a96d109d44a1fc22858006c0f0e16/consumer-secret +1 -0
  139. data/server/instances/10/notifications/8b9a96d109d44a1fc22858006c0f0e16/producer-secret +1 -0
  140. data/server/instances/10/notifications/8b9a96d109d44a1fc22858006c0f0e16/subscription.xml +27 -0
  141. data/server/instances/10/notifications/9120a477e64d7debae2cda964a9948a0/consumer-secret +1 -0
  142. data/server/instances/10/notifications/9120a477e64d7debae2cda964a9948a0/producer-secret +1 -0
  143. data/server/instances/10/notifications/9120a477e64d7debae2cda964a9948a0/subscription.xml +27 -0
  144. data/server/instances/10/notifications/93c5a5ab72a745c0f9fffe2fe58db205/consumer-secret +1 -0
  145. data/server/instances/10/notifications/93c5a5ab72a745c0f9fffe2fe58db205/producer-secret +1 -0
  146. data/server/instances/10/notifications/93c5a5ab72a745c0f9fffe2fe58db205/subscription.xml +27 -0
  147. data/server/instances/10/notifications/a8db1498388588bddf518878263fd898/consumer-secret +1 -0
  148. data/server/instances/10/notifications/a8db1498388588bddf518878263fd898/producer-secret +1 -0
  149. data/server/instances/10/notifications/a8db1498388588bddf518878263fd898/subscription.xml +27 -0
  150. data/server/instances/10/notifications/b534f057c1c97f65e68f59427958e78d/consumer-secret +1 -0
  151. data/server/instances/10/notifications/b534f057c1c97f65e68f59427958e78d/producer-secret +1 -0
  152. data/server/instances/10/notifications/b534f057c1c97f65e68f59427958e78d/subscription.xml +27 -0
  153. data/server/instances/10/notifications/bb3d69ee3df32f3b5cb69a51d1af8ae4/consumer-secret +1 -0
  154. data/server/instances/10/notifications/bb3d69ee3df32f3b5cb69a51d1af8ae4/producer-secret +1 -0
  155. data/server/instances/10/notifications/bb3d69ee3df32f3b5cb69a51d1af8ae4/subscription.xml +27 -0
  156. data/server/instances/10/notifications/bc597391804363834987804436b8b63b/consumer-secret +1 -0
  157. data/server/instances/10/notifications/bc597391804363834987804436b8b63b/producer-secret +1 -0
  158. data/server/instances/10/notifications/bc597391804363834987804436b8b63b/subscription.xml +27 -0
  159. data/server/instances/10/notifications/bf2f6599eebcd9a08e47bdafd4a67660/consumer-secret +1 -0
  160. data/server/instances/10/notifications/bf2f6599eebcd9a08e47bdafd4a67660/producer-secret +1 -0
  161. data/server/instances/10/notifications/bf2f6599eebcd9a08e47bdafd4a67660/subscription.xml +27 -0
  162. data/server/instances/10/notifications/db9cf0ae80bd61e6124c382b992a1550/consumer-secret +1 -0
  163. data/server/instances/10/notifications/db9cf0ae80bd61e6124c382b992a1550/producer-secret +1 -0
  164. data/server/instances/10/notifications/db9cf0ae80bd61e6124c382b992a1550/subscription.xml +27 -0
  165. data/server/instances/10/notifications/e528089610c991500eb2e8b094f6f169/consumer-secret +1 -0
  166. data/server/instances/10/notifications/e528089610c991500eb2e8b094f6f169/producer-secret +1 -0
  167. data/server/instances/10/notifications/e528089610c991500eb2e8b094f6f169/subscription.xml +27 -0
  168. data/server/instances/10/notifications/e7d3ca382d26b5f5eba00c40c29827da/consumer-secret +1 -0
  169. data/server/instances/10/notifications/e7d3ca382d26b5f5eba00c40c29827da/producer-secret +1 -0
  170. data/server/instances/10/notifications/e7d3ca382d26b5f5eba00c40c29827da/subscription.xml +27 -0
  171. data/server/instances/10/notifications/ebdc914fde6fe299143ae4601c142738/consumer-secret +1 -0
  172. data/server/instances/10/notifications/ebdc914fde6fe299143ae4601c142738/producer-secret +1 -0
  173. data/server/instances/10/notifications/ebdc914fde6fe299143ae4601c142738/subscription.xml +27 -0
  174. data/server/instances/10/notifications/f26b2b9efc10b9259647cf1a2b934694/consumer-secret +1 -0
  175. data/server/instances/10/notifications/f26b2b9efc10b9259647cf1a2b934694/producer-secret +1 -0
  176. data/server/instances/10/notifications/f26b2b9efc10b9259647cf1a2b934694/subscription.xml +27 -0
  177. data/server/instances/10/notifications/f4e1d7808171fe7c5fab4a99145ea185/consumer-secret +1 -0
  178. data/server/instances/10/notifications/f4e1d7808171fe7c5fab4a99145ea185/producer-secret +1 -0
  179. data/server/instances/10/notifications/f4e1d7808171fe7c5fab4a99145ea185/subscription.xml +27 -0
  180. data/server/instances/10/notifications/f7e947a1b4b32f3dad5debd44fc3236b/consumer-secret +1 -0
  181. data/server/instances/10/notifications/f7e947a1b4b32f3dad5debd44fc3236b/producer-secret +1 -0
  182. data/server/instances/10/notifications/f7e947a1b4b32f3dad5debd44fc3236b/subscription.xml +27 -0
  183. data/server/instances/10/notifications/fbf5d0ae050a50e8a2fca6bc60f5b8d6/consumer-secret +1 -0
  184. data/server/instances/10/notifications/fbf5d0ae050a50e8a2fca6bc60f5b8d6/producer-secret +1 -0
  185. data/server/instances/10/notifications/fbf5d0ae050a50e8a2fca6bc60f5b8d6/subscription.xml +27 -0
  186. data/server/instances/10/properties.xml +388 -0
  187. data/server/instances/11/notifications/134c18da209261bc409ccd137b2e46d3/consumer-secret +1 -0
  188. data/server/instances/11/notifications/134c18da209261bc409ccd137b2e46d3/producer-secret +1 -0
  189. data/server/instances/11/notifications/134c18da209261bc409ccd137b2e46d3/subscription.xml +27 -0
  190. data/server/instances/11/notifications/48862f47f66e8229582bc91fbc38a512/consumer-secret +1 -0
  191. data/server/instances/11/notifications/48862f47f66e8229582bc91fbc38a512/producer-secret +1 -0
  192. data/server/instances/11/notifications/48862f47f66e8229582bc91fbc38a512/subscription.xml +5 -0
  193. data/server/instances/11/properties.xml +517 -0
  194. data/server/instances/2/notifications/0bbfabbebf46b850383b4e1d7bd926e3/consumer-secret +1 -0
  195. data/server/instances/2/notifications/0bbfabbebf46b850383b4e1d7bd926e3/producer-secret +1 -0
  196. data/server/instances/2/notifications/0bbfabbebf46b850383b4e1d7bd926e3/subscription.xml +27 -0
  197. data/server/instances/2/notifications/1d426895d19caa1471c713e80cc3c845/consumer-secret +1 -0
  198. data/server/instances/2/notifications/1d426895d19caa1471c713e80cc3c845/producer-secret +1 -0
  199. data/server/instances/2/notifications/1d426895d19caa1471c713e80cc3c845/subscription.xml +27 -0
  200. data/server/instances/2/notifications/292c8983aa798f0c5ced5ddc4b58abe4/consumer-secret +1 -0
  201. data/server/instances/2/notifications/292c8983aa798f0c5ced5ddc4b58abe4/producer-secret +1 -0
  202. data/server/instances/2/notifications/292c8983aa798f0c5ced5ddc4b58abe4/subscription.xml +27 -0
  203. data/server/instances/2/notifications/332c3026c8ad3075b092bd7e7a2b4f71/consumer-secret +1 -0
  204. data/server/instances/2/notifications/332c3026c8ad3075b092bd7e7a2b4f71/producer-secret +1 -0
  205. data/server/instances/2/notifications/332c3026c8ad3075b092bd7e7a2b4f71/subscription.xml +27 -0
  206. data/server/instances/2/notifications/d377446918808d23d03291fc1140883c/consumer-secret +1 -0
  207. data/server/instances/2/notifications/d377446918808d23d03291fc1140883c/producer-secret +1 -0
  208. data/server/instances/2/notifications/d377446918808d23d03291fc1140883c/subscription.xml +27 -0
  209. data/server/instances/2/notifications/d5b65c7cbff5d259e4ee8405190ec558/consumer-secret +1 -0
  210. data/server/instances/2/notifications/d5b65c7cbff5d259e4ee8405190ec558/producer-secret +1 -0
  211. data/server/instances/2/notifications/d5b65c7cbff5d259e4ee8405190ec558/subscription.xml +27 -0
  212. data/server/instances/2/notifications/d7ee4fedabb402dc43986dfa199e6768/consumer-secret +1 -0
  213. data/server/instances/2/notifications/d7ee4fedabb402dc43986dfa199e6768/producer-secret +1 -0
  214. data/server/instances/2/notifications/d7ee4fedabb402dc43986dfa199e6768/subscription.xml +5 -0
  215. data/server/instances/2/properties.xml +517 -0
  216. data/server/instances/3/notifications/27195e2503deaf25b3291394fe97985c/consumer-secret +1 -0
  217. data/server/instances/3/notifications/27195e2503deaf25b3291394fe97985c/producer-secret +1 -0
  218. data/server/instances/3/notifications/27195e2503deaf25b3291394fe97985c/subscription.xml +5 -0
  219. data/server/instances/3/notifications/6cec45935d78709a4aa6622491006f4b/consumer-secret +1 -0
  220. data/server/instances/3/notifications/6cec45935d78709a4aa6622491006f4b/producer-secret +1 -0
  221. data/server/instances/3/notifications/6cec45935d78709a4aa6622491006f4b/subscription.xml +27 -0
  222. data/server/instances/3/notifications/755542b2fb8d0c8fb9add29e012ec707/consumer-secret +1 -0
  223. data/server/instances/3/notifications/755542b2fb8d0c8fb9add29e012ec707/producer-secret +1 -0
  224. data/server/instances/3/notifications/755542b2fb8d0c8fb9add29e012ec707/subscription.xml +27 -0
  225. data/server/instances/3/properties.xml +517 -0
  226. data/server/instances/4/notifications/151e90db818eb5812905257a8eb7cea4/consumer-secret +1 -0
  227. data/server/instances/4/notifications/151e90db818eb5812905257a8eb7cea4/producer-secret +1 -0
  228. data/server/instances/4/notifications/151e90db818eb5812905257a8eb7cea4/subscription.xml +5 -0
  229. data/server/instances/4/notifications/a89df398fcc088c067c39ae3974ec57f/consumer-secret +1 -0
  230. data/server/instances/4/notifications/a89df398fcc088c067c39ae3974ec57f/producer-secret +1 -0
  231. data/server/instances/4/notifications/a89df398fcc088c067c39ae3974ec57f/subscription.xml +27 -0
  232. data/server/instances/4/properties.xml +517 -0
  233. data/server/instances/5/notifications/02ebbf888bd3efd11924f4c416d784e4/consumer-secret +1 -0
  234. data/server/instances/5/notifications/02ebbf888bd3efd11924f4c416d784e4/producer-secret +1 -0
  235. data/server/instances/5/notifications/02ebbf888bd3efd11924f4c416d784e4/subscription.xml +27 -0
  236. data/server/instances/5/notifications/0b9589d847cccf768013b6082893bce6/consumer-secret +1 -0
  237. data/server/instances/5/notifications/0b9589d847cccf768013b6082893bce6/producer-secret +1 -0
  238. data/server/instances/5/notifications/0b9589d847cccf768013b6082893bce6/subscription.xml +5 -0
  239. data/server/instances/5/properties.xml +517 -0
  240. data/server/instances/6/notifications/23da9f5c4548f384d625e6d12b3ebe2d/consumer-secret +1 -0
  241. data/server/instances/6/notifications/23da9f5c4548f384d625e6d12b3ebe2d/producer-secret +1 -0
  242. data/server/instances/6/notifications/23da9f5c4548f384d625e6d12b3ebe2d/subscription.xml +5 -0
  243. data/server/instances/6/notifications/282e7077e9c5b9972413cc92a6dcffc3/consumer-secret +1 -0
  244. data/server/instances/6/notifications/282e7077e9c5b9972413cc92a6dcffc3/producer-secret +1 -0
  245. data/server/instances/6/notifications/282e7077e9c5b9972413cc92a6dcffc3/subscription.xml +27 -0
  246. data/server/instances/6/notifications/7e57d7438db8210766eab6873124dc02/consumer-secret +1 -0
  247. data/server/instances/6/notifications/7e57d7438db8210766eab6873124dc02/producer-secret +1 -0
  248. data/server/instances/6/notifications/7e57d7438db8210766eab6873124dc02/subscription.xml +27 -0
  249. data/server/instances/6/properties.xml +517 -0
  250. data/server/instances/7/notifications/7276b795b5ed2f6638473526d9b1b1e1/consumer-secret +1 -0
  251. data/server/instances/7/notifications/7276b795b5ed2f6638473526d9b1b1e1/producer-secret +1 -0
  252. data/server/instances/7/notifications/7276b795b5ed2f6638473526d9b1b1e1/subscription.xml +27 -0
  253. data/server/instances/7/notifications/f3fbbf27fcbcc02a9f8a614326461a5c/consumer-secret +1 -0
  254. data/server/instances/7/notifications/f3fbbf27fcbcc02a9f8a614326461a5c/producer-secret +1 -0
  255. data/server/instances/7/notifications/f3fbbf27fcbcc02a9f8a614326461a5c/subscription.xml +5 -0
  256. data/server/instances/7/properties.xml +517 -0
  257. data/server/instances/8/notifications/2854ed5a8f97a33d31f908f67544ec62/consumer-secret +1 -0
  258. data/server/instances/8/notifications/2854ed5a8f97a33d31f908f67544ec62/producer-secret +1 -0
  259. data/server/instances/8/notifications/2854ed5a8f97a33d31f908f67544ec62/subscription.xml +27 -0
  260. data/server/instances/8/notifications/595259518a5cb2ce286bb39840f7a64c/consumer-secret +1 -0
  261. data/server/instances/8/notifications/595259518a5cb2ce286bb39840f7a64c/producer-secret +1 -0
  262. data/server/instances/8/notifications/595259518a5cb2ce286bb39840f7a64c/subscription.xml +5 -0
  263. data/server/instances/8/properties.xml +517 -0
  264. data/server/instances/9/notifications/54e96913d66f1dd69ec82d2b52268232/consumer-secret +1 -0
  265. data/server/instances/9/notifications/54e96913d66f1dd69ec82d2b52268232/producer-secret +1 -0
  266. data/server/instances/9/notifications/54e96913d66f1dd69ec82d2b52268232/subscription.xml +5 -0
  267. data/server/instances/9/notifications/5debc1fd138fdc80940cd5647003ed45/consumer-secret +1 -0
  268. data/server/instances/9/notifications/5debc1fd138fdc80940cd5647003ed45/producer-secret +1 -0
  269. data/server/instances/9/notifications/5debc1fd138fdc80940cd5647003ed45/subscription.xml +27 -0
  270. data/server/instances/9/properties.xml +517 -0
  271. data/server/resources/properties.init +351 -0
  272. data/server/resources/properties.schema.active +79 -0
  273. data/server/resources/properties.schema.finished +79 -0
  274. data/server/resources/properties.schema.inactive +79 -0
  275. data/server/resources/topics.xml +55 -0
  276. data/server/server.rb +25 -0
  277. data/server/todo.txt +20 -0
  278. data/test/delete.rb +27 -0
  279. data/test/load.rb +55 -0
  280. data/test/testset.xml +297 -0
  281. metadata +382 -0
@@ -0,0 +1,393 @@
1
+ <?xml version="1.0"?>
2
+ <testset>
3
+ <positions/>
4
+ <handlerwrapper>RescueHandlerWrapper</handlerwrapper>
5
+ <dataelements>
6
+ <outer>2</outer>
7
+ <middle>2</middle>
8
+ <inner>2</inner>
9
+ <cons_a>10</cons_a>
10
+ <cons_b>45</cons_b>
11
+ </dataelements>
12
+ <endpoints>
13
+ <services>http://localhost:9290/groups/Interface</services>
14
+ <injection>http://localhost:9291/</injection>
15
+ </endpoints>
16
+ <description xmlns="http://cpee.org/ns/description/1.0">
17
+ <loop post_test="data.outer &gt; 0">
18
+ <parallel>
19
+ <parallel_branch>
20
+ <loop post_test="data.middle &gt; 0">
21
+ <parallel>
22
+ <parallel_branch>
23
+ <manipulate id="m01"/>
24
+ <call id="branch_x" endpoint="services">
25
+ <constraints>
26
+ <constraint xpath="property_B" comparator="&gt;" variable="cons_b"/>
27
+ </constraints>
28
+ <parameters><!--{{{-->
29
+ <service>
30
+ <serviceoperation>"no_params"</serviceoperation>
31
+ <injection_handler>endpoints.injection</injection_handler>
32
+ </service>
33
+ </parameters><!--}}}-->
34
+ </call>
35
+ </parallel_branch>
36
+ <parallel_branch>
37
+ <manipulate id="m02"/>
38
+ <loop post_test="data.inner &gt; 0">
39
+ <call id="branch_y" endpoint="services">
40
+ <constraints>
41
+ <constraint xpath="property_B" comparator="&gt;" variable="cons_b"/>
42
+ </constraints>
43
+ <parameters><!--{{{-->
44
+ <service>
45
+ <serviceoperation>"no_params"</serviceoperation>
46
+ <injection_handler>endpoints.injection</injection_handler>
47
+ </service>
48
+ </parameters><!--}}}-->
49
+ </call>
50
+ <manipulate id="reduce_inner">
51
+ data.cons_b += 5
52
+ data.inner -= 1
53
+ </manipulate>
54
+ </loop>
55
+ </parallel_branch>
56
+ </parallel>
57
+ <manipulate id="reduce_middle">
58
+ data.middle -= 1
59
+ data.inner = data.middle
60
+ </manipulate>
61
+ </loop>
62
+ </parallel_branch>
63
+ <parallel_branch>
64
+ <manipulate id="m03"/>
65
+ <call id="branch_z" endpoint="services">
66
+ <constraints>
67
+ <constraint xpath="property_A" comparator="&gt;" variable="cons_a"/>
68
+ </constraints>
69
+ <parameters><!--{{{-->
70
+ <service>
71
+ <serviceoperation>"no_params"</serviceoperation>
72
+ <injection_handler>endpoints.injection</injection_handler>
73
+ </service>
74
+ </parameters><!--}}}-->
75
+ </call>
76
+ </parallel_branch>
77
+ </parallel>
78
+ <manipulate id="reduce_outer">
79
+ data.cons_a += 50
80
+ data.outer -= 1
81
+ data.inner = data.outer
82
+ data.middle = data.outer
83
+ </manipulate>
84
+ </loop>
85
+ </description>
86
+ <transformation>
87
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:d="http://cpee.org/ns/description/1.0">
88
+ <xsl:output method="text"/>
89
+ <xsl:strip-space elements="*"/>
90
+ <xsl:variable name="myspacemultiplier">2</xsl:variable>
91
+
92
+ <xsl:template match="/">
93
+ <xsl:apply-templates select="//d:description"/>
94
+ </xsl:template>
95
+
96
+ <xsl:template match="//d:description">
97
+ <xsl:apply-templates>
98
+ <xsl:with-param name="myspace"><xsl:value-of select="-1*$myspacemultiplier"/></xsl:with-param>
99
+ </xsl:apply-templates>
100
+ </xsl:template>
101
+
102
+ <xsl:template match="*">
103
+ <xsl:param name="myspace"/>
104
+ <xsl:call-template name="print-space">
105
+ <xsl:with-param name="i">1</xsl:with-param>
106
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
107
+ </xsl:call-template>
108
+ <xsl:if test="name()='call' or name()='manipulate'">
109
+ <xsl:text>activity :</xsl:text>
110
+ <xsl:value-of select="@id"/>
111
+ </xsl:if>
112
+ <xsl:if test="name()='call'">
113
+ <xsl:text>, :call, :</xsl:text>
114
+ <xsl:value-of select="@endpoint"/>
115
+ <xsl:apply-templates select="d:parameters"/>
116
+ <xsl:if test="@oid">
117
+ <xsl:text>, :'call-oid' => '</xsl:text><xsl:value-of select="@oid"/><xsl:text>'</xsl:text>
118
+ </xsl:if>
119
+ <xsl:apply-templates select="d:manipulate" mode="part-of-call">
120
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace"/></xsl:with-param>
121
+ </xsl:apply-templates>
122
+ <xsl:call-template name="print-newline"/>
123
+ </xsl:if>
124
+ <xsl:if test="name()='manipulate'">
125
+ <xsl:text>, :manipulate</xsl:text>
126
+ <!-- RESCUE: manipulate with dataelement as result object -->
127
+ <xsl:if test="@data">
128
+ <xsl:text>, nil,</xsl:text>
129
+ <xsl:value-of select="@data"/>
130
+ </xsl:if>
131
+ <xsl:if test="@properties">
132
+ <xsl:text>,</xsl:text>
133
+ <xsl:value-of select="@properties"/>
134
+ </xsl:if>
135
+ <!-- RESCUE -->
136
+ <xsl:call-template name="print-content">
137
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace"/></xsl:with-param>
138
+ </xsl:call-template>
139
+ <xsl:call-template name="print-newline"/>
140
+ </xsl:if>
141
+ <xsl:if test="name()='parallel'">
142
+ <xsl:text>parallel</xsl:text>
143
+ <xsl:if test="@wait">
144
+ <xsl:text> :wait => </xsl:text>
145
+ <xsl:value-of select="@wait"/>
146
+ </xsl:if>
147
+ <xsl:text> do</xsl:text>
148
+ <xsl:call-template name="print-newline"/>
149
+ <xsl:apply-templates>
150
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
151
+ </xsl:apply-templates>
152
+ <xsl:call-template name="print-space">
153
+ <xsl:with-param name="i">1</xsl:with-param>
154
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
155
+ </xsl:call-template>
156
+ <xsl:text>end</xsl:text>
157
+ <xsl:call-template name="print-newline"/>
158
+ </xsl:if>
159
+ <xsl:if test="name()='loop'">
160
+ <xsl:text>loop </xsl:text>
161
+ <xsl:if test="@pre_test">
162
+ <xsl:text>pre_test{</xsl:text>
163
+ <xsl:value-of select="@pre_test"/>
164
+ <xsl:text>} </xsl:text>
165
+ </xsl:if>
166
+ <xsl:if test="@post_test">
167
+ <xsl:text>post_test{</xsl:text>
168
+ <xsl:value-of select="@post_test"/>
169
+ <xsl:text>} </xsl:text>
170
+ </xsl:if>
171
+ <xsl:text>do</xsl:text>
172
+ <xsl:call-template name="print-newline"/>
173
+ <xsl:apply-templates>
174
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
175
+ </xsl:apply-templates>
176
+ <xsl:call-template name="print-space">
177
+ <xsl:with-param name="i">1</xsl:with-param>
178
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
179
+ </xsl:call-template>
180
+ <xsl:text>end</xsl:text>
181
+ <xsl:call-template name="print-newline"/>
182
+ </xsl:if>
183
+ <xsl:if test="name()='choose'">
184
+ <xsl:text>choose do</xsl:text>
185
+ <xsl:call-template name="print-newline"/>
186
+ <xsl:apply-templates>
187
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
188
+ </xsl:apply-templates>
189
+ <xsl:call-template name="print-space">
190
+ <xsl:with-param name="i">1</xsl:with-param>
191
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
192
+ </xsl:call-template>
193
+ <xsl:text>end</xsl:text>
194
+ <xsl:call-template name="print-newline"/>
195
+ </xsl:if>
196
+ <!-- RESCUE -->
197
+ <xsl:if test="name()='group'">
198
+ <xsl:text># ========== Code was injected via: </xsl:text>
199
+ <xsl:value-of select="@source"/>
200
+ <xsl:text>==========</xsl:text>
201
+ <xsl:call-template name="print-newline"/>
202
+ <xsl:apply-templates>
203
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
204
+ </xsl:apply-templates>
205
+ <xsl:call-template name="print-newline"/>
206
+ <xsl:text># ========== End of injected code ============ </xsl:text>
207
+ <xsl:call-template name="print-newline"/>
208
+ </xsl:if>
209
+ <!-- RESCUE -->
210
+ <xsl:if test="name()='critical'">
211
+ <xsl:text>critical :</xsl:text>
212
+ <xsl:value-of select="@sid"/>
213
+ <xsl:text> do</xsl:text>
214
+ <xsl:call-template name="print-newline"/>
215
+ <xsl:apply-templates>
216
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
217
+ </xsl:apply-templates>
218
+ <xsl:call-template name="print-space">
219
+ <xsl:with-param name="i">1</xsl:with-param>
220
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
221
+ </xsl:call-template>
222
+ <xsl:text>end</xsl:text>
223
+ <xsl:call-template name="print-newline"/>
224
+ </xsl:if>
225
+ </xsl:template>
226
+
227
+ <xsl:template match="d:alternative">
228
+ <xsl:param name="myspace"/>
229
+ <xsl:call-template name="print-space">
230
+ <xsl:with-param name="i">1</xsl:with-param>
231
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
232
+ </xsl:call-template>
233
+ <xsl:text>alternative </xsl:text>
234
+ <xsl:value-of select="@condition"/>
235
+ <xsl:text> do</xsl:text>
236
+ <xsl:call-template name="print-newline"/>
237
+ <xsl:apply-templates>
238
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
239
+ </xsl:apply-templates>
240
+ <xsl:call-template name="print-space">
241
+ <xsl:with-param name="i">1</xsl:with-param>
242
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
243
+ </xsl:call-template>
244
+ <xsl:text>end</xsl:text>
245
+ <xsl:call-template name="print-newline"/>
246
+ </xsl:template>
247
+
248
+ <xsl:template match="d:otherwise">
249
+ <xsl:param name="myspace"/>
250
+ <xsl:call-template name="print-space">
251
+ <xsl:with-param name="i">1</xsl:with-param>
252
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
253
+ </xsl:call-template>
254
+ <xsl:text>otherwise do</xsl:text>
255
+ <xsl:call-template name="print-newline"/>
256
+ <xsl:apply-templates>
257
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
258
+ </xsl:apply-templates>
259
+ <xsl:call-template name="print-space">
260
+ <xsl:with-param name="i">1</xsl:with-param>
261
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
262
+ </xsl:call-template>
263
+ <xsl:text>end</xsl:text>
264
+ <xsl:call-template name="print-newline"/>
265
+ </xsl:template>
266
+
267
+ <xsl:template match="d:parallel_branch">
268
+ <xsl:param name="myspace"/>
269
+ <xsl:call-template name="print-space">
270
+ <xsl:with-param name="i">1</xsl:with-param>
271
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
272
+ </xsl:call-template>
273
+ <xsl:text>parallel_branch</xsl:text>
274
+ <xsl:if test="@pass">
275
+ <xsl:text> </xsl:text>
276
+ <xsl:value-of select="@pass"/>
277
+ </xsl:if>
278
+ <xsl:text> do</xsl:text>
279
+ <xsl:if test="@local">
280
+ <xsl:text> |</xsl:text>
281
+ <xsl:value-of select="@local"/>
282
+ <xsl:text>|</xsl:text>
283
+ </xsl:if>
284
+ <xsl:call-template name="print-newline"/>
285
+ <xsl:apply-templates>
286
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
287
+ </xsl:apply-templates>
288
+ <xsl:call-template name="print-space">
289
+ <xsl:with-param name="i">1</xsl:with-param>
290
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
291
+ </xsl:call-template>
292
+ <xsl:text>end</xsl:text>
293
+ <xsl:call-template name="print-newline"/>
294
+ </xsl:template>
295
+
296
+ <xsl:template match="d:parameters">
297
+ <xsl:apply-templates select="d:*" mode="parameter"/>
298
+ </xsl:template>
299
+
300
+ <xsl:template match="d:*" mode="parameter">
301
+ <xsl:text>, :</xsl:text>
302
+ <xsl:value-of select="name()"/>
303
+ <xsl:text> => </xsl:text>
304
+ <xsl:choose>
305
+ <xsl:when test="count(*) > 0">
306
+ <xsl:text>[</xsl:text>
307
+ <xsl:apply-templates select="d:*" mode="sub-parameter"/>
308
+ <xsl:text>]</xsl:text>
309
+ </xsl:when>
310
+ <xsl:otherwise>
311
+ <xsl:choose>
312
+ <xsl:when test="@type = 'symbolic'">
313
+ <xsl:value-of select="text()"/>
314
+ </xsl:when>
315
+ <xsl:otherwise>
316
+ <xsl:text>"</xsl:text>
317
+ <xsl:value-of select="text()"/>
318
+ <xsl:text>"</xsl:text>
319
+ </xsl:otherwise>
320
+ </xsl:choose>
321
+ </xsl:otherwise>
322
+ </xsl:choose>
323
+ </xsl:template>
324
+
325
+ <xsl:template match="d:*" mode="sub-parameter">
326
+ <xsl:text> { :</xsl:text>
327
+ <xsl:value-of select="name()"/>
328
+ <xsl:text> => </xsl:text>
329
+ <xsl:value-of select="text()"/>
330
+ <xsl:text> }</xsl:text>
331
+ <xsl:choose>
332
+ <xsl:when test="generate-id(.) = generate-id(../*[last()])">
333
+ <xsl:text> </xsl:text>
334
+ </xsl:when>
335
+ <xsl:otherwise>
336
+ <xsl:text>,</xsl:text>
337
+ </xsl:otherwise>
338
+ </xsl:choose>
339
+ </xsl:template>
340
+
341
+ <xsl:template match="d:manipulate" mode="part-of-call">
342
+ <xsl:param name="myspace"/>
343
+ <xsl:call-template name="print-content">
344
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace"/></xsl:with-param>
345
+ </xsl:call-template>
346
+ </xsl:template>
347
+
348
+ <xsl:template name="print-content">
349
+ <xsl:param name="myspace"/>
350
+ <xsl:if test="text()">
351
+ <xsl:text> do </xsl:text>
352
+ <xsl:if test="@output">
353
+ <xsl:text>|</xsl:text>
354
+ <xsl:value-of select="@output"/>
355
+ <xsl:if test="@properties">
356
+ <xsl:text>, properties</xsl:text>
357
+ </xsl:if>
358
+ <xsl:text>|</xsl:text>
359
+ </xsl:if>
360
+ <xsl:call-template name="print-newline"/>
361
+ <xsl:value-of select="text()"/>
362
+ <xsl:call-template name="print-newline"/>
363
+ <xsl:call-template name="print-space">
364
+ <xsl:with-param name="i">1</xsl:with-param>
365
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
366
+ </xsl:call-template>
367
+ <xsl:text>end</xsl:text>
368
+ </xsl:if>
369
+ </xsl:template>
370
+
371
+ <xsl:template name="print-space">
372
+ <xsl:param name="i"/>
373
+ <xsl:param name="count"/>
374
+ <xsl:if test="$i &lt;= $count">
375
+ <xsl:text> </xsl:text>
376
+ <xsl:call-template name="print-space">
377
+ <xsl:with-param name="i">
378
+ <xsl:value-of select="$i + 1"/>
379
+ </xsl:with-param>
380
+ <xsl:with-param name="count">
381
+ <xsl:value-of select="$count"/>
382
+ </xsl:with-param>
383
+ </xsl:call-template>
384
+ </xsl:if>
385
+ </xsl:template>
386
+ <xsl:template name="print-newline">
387
+ <xsl:text>
388
+ </xsl:text>
389
+ </xsl:template>
390
+
391
+ </xsl:stylesheet>
392
+ </transformation>
393
+ </testset>
@@ -0,0 +1,356 @@
1
+ <?xml version="1.0"?>
2
+ <testset>
3
+ <positions/>
4
+ <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
5
+ <dataelements>
6
+ <persons>3</persons>
7
+ <card>Visa_12345</card>
8
+ <airline>null</airline>
9
+ <hotels>[]</hotels>
10
+ <from>Vienna</from>
11
+ <to>Prague</to>
12
+ <costs>0</costs>
13
+ </dataelements>
14
+ <handlers>
15
+ <handler url="http://localhost:9299/events">
16
+ <events topic='running'>activity_calling,activity_failed,activity_manipulating,activity_done</events>
17
+ <events topic='properties/dataelements'>change</events>
18
+ <events topic='properties/endpoints'>change</events>
19
+ <events topic='properties/description'>error</events>
20
+ <events topic='properties/state'>change</events>
21
+ <events topic='properties/status'>change</events>
22
+ </handler>
23
+ </handlers>
24
+ <endpoints>
25
+ <bookAir>http://gruppe.wst.univie.ac.at/~mangler/services/airline.php</bookAir>
26
+ <bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
27
+ <approve>http://gruppe.wst.univie.ac.at/~mangler/services/approval.php</approve>
28
+ </endpoints>
29
+ <description xmlns="http://cpee.org/ns/description/1.0">
30
+ <call id="a1" endpoint="bookAir">
31
+ <parameters>
32
+ <method>post</method>
33
+ <parameters>
34
+ <from>data.from</from>
35
+ <to>data.to</to>
36
+ <persons>data.persons</persons>
37
+ </parameters>
38
+ </parameters>
39
+ <manipulate output="result"> data.airline = result.value('id')
40
+ data.costs += result.value('costs').to_f
41
+ status.update 1, 'Hotel'</manipulate>
42
+ </call>
43
+ <parallel>
44
+ <loop pre_test="data.persons > 0">
45
+ <parallel_branch pass="data.persons" local="p">
46
+ <call id="a2" endpoint="bookHotel">
47
+ <parameters>
48
+ <method>post</method>
49
+ <parameters>
50
+ <to>data.to</to>
51
+ </parameters>
52
+ </parameters>
53
+ <manipulate output="result"> data.hotels &lt;&lt; result.value('id')
54
+ data.costs += result.value('costs').to_f</manipulate>
55
+ </call>
56
+ </parallel_branch>
57
+ <manipulate id="a3"> data.persons -= 1</manipulate>
58
+ </loop>
59
+ </parallel>
60
+ <choose>
61
+ <alternative condition="data.costs > 700">
62
+ <call id="a4" endpoint="approve">
63
+ <parameters>
64
+ <method>post</method>
65
+ <parameters>
66
+ <costs>data.costs</costs>
67
+ </parameters>
68
+ </parameters>
69
+ </call>
70
+ </alternative>
71
+ </choose>
72
+ </description>
73
+ <transformation>
74
+ <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:d="http://cpee.org/ns/description/1.0">
75
+ <xsl:output method="text"/>
76
+ <xsl:strip-space elements="*"/>
77
+ <xsl:variable name="myspacemultiplier">2</xsl:variable>
78
+
79
+ <xsl:template match="/">
80
+ <xsl:apply-templates select="//d:description"/>
81
+ </xsl:template>
82
+
83
+ <xsl:template match="//d:description">
84
+ <xsl:apply-templates>
85
+ <xsl:with-param name="myspace"><xsl:value-of select="-1*$myspacemultiplier"/></xsl:with-param>
86
+ </xsl:apply-templates>
87
+ </xsl:template>
88
+
89
+ <xsl:template match="*">
90
+ <xsl:param name="myspace"/>
91
+ <xsl:call-template name="print-space">
92
+ <xsl:with-param name="i">1</xsl:with-param>
93
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
94
+ </xsl:call-template>
95
+ <xsl:if test="name()='call' or name()='manipulate'">
96
+ <xsl:text>activity :</xsl:text>
97
+ <xsl:value-of select="@id"/>
98
+ </xsl:if>
99
+ <xsl:if test="name()='call'">
100
+ <xsl:text>, :call, :</xsl:text>
101
+ <xsl:value-of select="@endpoint"/>
102
+ <xsl:apply-templates select="d:parameters"/>
103
+ <xsl:apply-templates select="d:manipulate" mode="part-of-call">
104
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace"/></xsl:with-param>
105
+ </xsl:apply-templates>
106
+ <xsl:call-template name="print-newline"/>
107
+ </xsl:if>
108
+ <xsl:if test="name()='manipulate'">
109
+ <xsl:text>, :manipulate</xsl:text>
110
+ <xsl:call-template name="print-content">
111
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace"/></xsl:with-param>
112
+ </xsl:call-template>
113
+ <xsl:call-template name="print-newline"/>
114
+ </xsl:if>
115
+ <xsl:if test="name()='parallel'">
116
+ <xsl:text>parallel</xsl:text>
117
+ <xsl:if test="@wait">
118
+ <xsl:text> :wait => </xsl:text>
119
+ <xsl:value-of select="@wait"/>
120
+ </xsl:if>
121
+ <xsl:text> do</xsl:text>
122
+ <xsl:call-template name="print-newline"/>
123
+ <xsl:apply-templates>
124
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
125
+ </xsl:apply-templates>
126
+ <xsl:call-template name="print-space">
127
+ <xsl:with-param name="i">1</xsl:with-param>
128
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
129
+ </xsl:call-template>
130
+ <xsl:text>end</xsl:text>
131
+ <xsl:call-template name="print-newline"/>
132
+ </xsl:if>
133
+ <xsl:if test="name()='loop'">
134
+ <xsl:text>loop </xsl:text>
135
+ <xsl:if test="@pre_test">
136
+ <xsl:text>pre_test{</xsl:text>
137
+ <xsl:value-of select="@pre_test"/>
138
+ <xsl:text>} </xsl:text>
139
+ </xsl:if>
140
+ <xsl:if test="@post_test">
141
+ <xsl:text>post_test{</xsl:text>
142
+ <xsl:value-of select="@post_test"/>
143
+ <xsl:text>} </xsl:text>
144
+ </xsl:if>
145
+ <xsl:text>do</xsl:text>
146
+ <xsl:call-template name="print-newline"/>
147
+ <xsl:apply-templates>
148
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
149
+ </xsl:apply-templates>
150
+ <xsl:call-template name="print-space">
151
+ <xsl:with-param name="i">1</xsl:with-param>
152
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
153
+ </xsl:call-template>
154
+ <xsl:text>end</xsl:text>
155
+ <xsl:call-template name="print-newline"/>
156
+ </xsl:if>
157
+ <xsl:if test="name()='choose'">
158
+ <xsl:text>choose do</xsl:text>
159
+ <xsl:call-template name="print-newline"/>
160
+ <xsl:apply-templates>
161
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
162
+ </xsl:apply-templates>
163
+ <xsl:call-template name="print-space">
164
+ <xsl:with-param name="i">1</xsl:with-param>
165
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
166
+ </xsl:call-template>
167
+ <xsl:text>end</xsl:text>
168
+ <xsl:call-template name="print-newline"/>
169
+ </xsl:if>
170
+ <xsl:if test="name()='group'">
171
+ <xsl:apply-templates>
172
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
173
+ </xsl:apply-templates>
174
+ <xsl:call-template name="print-newline"/>
175
+ </xsl:if>
176
+ <xsl:if test="name()='critical'">
177
+ <xsl:text>critical :</xsl:text>
178
+ <xsl:value-of select="@sid"/>
179
+ <xsl:text> do</xsl:text>
180
+ <xsl:call-template name="print-newline"/>
181
+ <xsl:apply-templates>
182
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
183
+ </xsl:apply-templates>
184
+ <xsl:call-template name="print-space">
185
+ <xsl:with-param name="i">1</xsl:with-param>
186
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
187
+ </xsl:call-template>
188
+ <xsl:text>end</xsl:text>
189
+ <xsl:call-template name="print-newline"/>
190
+ </xsl:if>
191
+ </xsl:template>
192
+
193
+ <xsl:template match="d:alternative">
194
+ <xsl:param name="myspace"/>
195
+ <xsl:call-template name="print-space">
196
+ <xsl:with-param name="i">1</xsl:with-param>
197
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
198
+ </xsl:call-template>
199
+ <xsl:text>alternative </xsl:text>
200
+ <xsl:value-of select="@condition"/>
201
+ <xsl:text> do</xsl:text>
202
+ <xsl:call-template name="print-newline"/>
203
+ <xsl:apply-templates>
204
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
205
+ </xsl:apply-templates>
206
+ <xsl:call-template name="print-space">
207
+ <xsl:with-param name="i">1</xsl:with-param>
208
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
209
+ </xsl:call-template>
210
+ <xsl:text>end</xsl:text>
211
+ <xsl:call-template name="print-newline"/>
212
+ </xsl:template>
213
+
214
+ <xsl:template match="d:otherwise">
215
+ <xsl:param name="myspace"/>
216
+ <xsl:call-template name="print-space">
217
+ <xsl:with-param name="i">1</xsl:with-param>
218
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
219
+ </xsl:call-template>
220
+ <xsl:text>otherwise do</xsl:text>
221
+ <xsl:call-template name="print-newline"/>
222
+ <xsl:apply-templates>
223
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
224
+ </xsl:apply-templates>
225
+ <xsl:call-template name="print-space">
226
+ <xsl:with-param name="i">1</xsl:with-param>
227
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
228
+ </xsl:call-template>
229
+ <xsl:text>end</xsl:text>
230
+ <xsl:call-template name="print-newline"/>
231
+ </xsl:template>
232
+
233
+ <xsl:template match="d:parallel_branch">
234
+ <xsl:param name="myspace"/>
235
+ <xsl:call-template name="print-space">
236
+ <xsl:with-param name="i">1</xsl:with-param>
237
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
238
+ </xsl:call-template>
239
+ <xsl:text>parallel_branch</xsl:text>
240
+ <xsl:if test="@pass">
241
+ <xsl:text> </xsl:text>
242
+ <xsl:value-of select="@pass"/>
243
+ </xsl:if>
244
+ <xsl:text> do</xsl:text>
245
+ <xsl:if test="@local">
246
+ <xsl:text> |</xsl:text>
247
+ <xsl:value-of select="@local"/>
248
+ <xsl:text>|</xsl:text>
249
+ </xsl:if>
250
+ <xsl:call-template name="print-newline"/>
251
+ <xsl:apply-templates>
252
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
253
+ </xsl:apply-templates>
254
+ <xsl:call-template name="print-space">
255
+ <xsl:with-param name="i">1</xsl:with-param>
256
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
257
+ </xsl:call-template>
258
+ <xsl:text>end</xsl:text>
259
+ <xsl:call-template name="print-newline"/>
260
+ </xsl:template>
261
+
262
+ <xsl:template match="d:parameters">
263
+ <xsl:apply-templates select="d:*" mode="parameter"/>
264
+ </xsl:template>
265
+
266
+ <xsl:template match="d:*" mode="parameter">
267
+ <xsl:text>, :</xsl:text>
268
+ <xsl:value-of select="name()"/>
269
+ <xsl:text> => </xsl:text>
270
+ <xsl:choose>
271
+ <xsl:when test="count(*) > 0">
272
+ <xsl:text>[</xsl:text>
273
+ <xsl:apply-templates select="d:*" mode="sub-parameter"/>
274
+ <xsl:text>]</xsl:text>
275
+ </xsl:when>
276
+ <xsl:otherwise>
277
+ <xsl:choose>
278
+ <xsl:when test="@type = 'symbolic'">
279
+ <xsl:value-of select="text()"/>
280
+ </xsl:when>
281
+ <xsl:otherwise>
282
+ <xsl:text>"</xsl:text>
283
+ <xsl:value-of select="text()"/>
284
+ <xsl:text>"</xsl:text>
285
+ </xsl:otherwise>
286
+ </xsl:choose>
287
+ </xsl:otherwise>
288
+ </xsl:choose>
289
+ </xsl:template>
290
+
291
+ <xsl:template match="d:*" mode="sub-parameter">
292
+ <xsl:text> { :</xsl:text>
293
+ <xsl:value-of select="name()"/>
294
+ <xsl:text> => </xsl:text>
295
+ <xsl:value-of select="text()"/>
296
+ <xsl:text> }</xsl:text>
297
+ <xsl:choose>
298
+ <xsl:when test="generate-id(.) = generate-id(../*[last()])">
299
+ <xsl:text> </xsl:text>
300
+ </xsl:when>
301
+ <xsl:otherwise>
302
+ <xsl:text>,</xsl:text>
303
+ </xsl:otherwise>
304
+ </xsl:choose>
305
+ </xsl:template>
306
+
307
+ <xsl:template match="d:manipulate" mode="part-of-call">
308
+ <xsl:param name="myspace"/>
309
+ <xsl:call-template name="print-content">
310
+ <xsl:with-param name="myspace"><xsl:value-of select="$myspace"/></xsl:with-param>
311
+ </xsl:call-template>
312
+ </xsl:template>
313
+
314
+ <xsl:template name="print-content">
315
+ <xsl:param name="myspace"/>
316
+ <xsl:if test="text()">
317
+ <xsl:text> do </xsl:text>
318
+ <xsl:if test="@output">
319
+ <xsl:text>|</xsl:text>
320
+ <xsl:value-of select="@output"/>
321
+ <xsl:text>|</xsl:text>
322
+ </xsl:if>
323
+ <xsl:call-template name="print-newline"/>
324
+ <xsl:value-of select="text()"/>
325
+ <xsl:call-template name="print-newline"/>
326
+ <xsl:call-template name="print-space">
327
+ <xsl:with-param name="i">1</xsl:with-param>
328
+ <xsl:with-param name="count"><xsl:value-of select="$myspace+$myspacemultiplier"/></xsl:with-param>
329
+ </xsl:call-template>
330
+ <xsl:text>end</xsl:text>
331
+ </xsl:if>
332
+ </xsl:template>
333
+
334
+ <xsl:template name="print-space">
335
+ <xsl:param name="i"/>
336
+ <xsl:param name="count"/>
337
+ <xsl:if test="$i &lt;= $count">
338
+ <xsl:text> </xsl:text>
339
+ <xsl:call-template name="print-space">
340
+ <xsl:with-param name="i">
341
+ <xsl:value-of select="$i + 1"/>
342
+ </xsl:with-param>
343
+ <xsl:with-param name="count">
344
+ <xsl:value-of select="$count"/>
345
+ </xsl:with-param>
346
+ </xsl:call-template>
347
+ </xsl:if>
348
+ </xsl:template>
349
+ <xsl:template name="print-newline">
350
+ <xsl:text>
351
+ </xsl:text>
352
+ </xsl:template>
353
+
354
+ </xsl:stylesheet>
355
+ </transformation>
356
+ </testset>