jruby_activiti 1.2.5 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (317) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -1
  3. data/.ruby-version +1 -1
  4. data/CHANGELOG +6 -0
  5. data/Jarfile +5 -0
  6. data/Jarfile.lock +52 -13
  7. data/README.md +21 -9
  8. data/java/build.md +3 -0
  9. data/java/mapping.md +20 -0
  10. data/java/pom.xml +30 -0
  11. data/java/src/main/java/jrubyactiviti/Modeler.java +95 -0
  12. data/java/src/main/java/jrubyactiviti/ProcessDiagram.java +491 -0
  13. data/java/src/main/java/jrubyactiviti/ProcessInstanceHighlights.java +237 -0
  14. data/java/src/main/java/jrubyactiviti/StencilsetResource.java +16 -0
  15. data/java/src/main/resources/stencilset.json +1339 -0
  16. data/jruby_activiti.gemspec +3 -2
  17. data/lib/generators/jruby_activiti/install_generator.rb +4 -0
  18. data/lib/jar/jrubyactiviti-2.0.jar +0 -0
  19. data/lib/jruby_activiti/version.rb +1 -1
  20. data/lib/jruby_activiti/web.rb +81 -0
  21. data/lib/jruby_activiti.rb +28 -20
  22. data/test/{base_test.rb → activiti_test.rb} +1 -3
  23. data/test/instance_hights_test.rb +18 -0
  24. data/test/modeler_test.rb +35 -0
  25. data/test/process_diagram_test.rb +33 -0
  26. data/test/resources/model_init_editor_source.json +1 -0
  27. data/test/resources/model_json_xml.json +278 -0
  28. data/test/resources/model_svg_xml.xml +66 -0
  29. data/test/stencilset_test.rb +7 -0
  30. data/test/test_helper.rb +2 -0
  31. data/web/public/diagram-viewer/images/bg.png +0 -0
  32. data/web/public/diagram-viewer/images/breadcrumbs.png +0 -0
  33. data/web/public/diagram-viewer/images/checker-bg.png +0 -0
  34. data/web/public/diagram-viewer/images/deployer/blue/message_catch.png +0 -0
  35. data/web/public/diagram-viewer/images/deployer/business_rule.png +0 -0
  36. data/web/public/diagram-viewer/images/deployer/error_catch.png +0 -0
  37. data/web/public/diagram-viewer/images/deployer/error_throw.png +0 -0
  38. data/web/public/diagram-viewer/images/deployer/manual.png +0 -0
  39. data/web/public/diagram-viewer/images/deployer/message_catch.png +0 -0
  40. data/web/public/diagram-viewer/images/deployer/message_throw.png +0 -0
  41. data/web/public/diagram-viewer/images/deployer/receive.png +0 -0
  42. data/web/public/diagram-viewer/images/deployer/script.png +0 -0
  43. data/web/public/diagram-viewer/images/deployer/send.png +0 -0
  44. data/web/public/diagram-viewer/images/deployer/service.png +0 -0
  45. data/web/public/diagram-viewer/images/deployer/signal_catch.png +0 -0
  46. data/web/public/diagram-viewer/images/deployer/signal_throw.png +0 -0
  47. data/web/public/diagram-viewer/images/deployer/timer.png +0 -0
  48. data/web/public/diagram-viewer/images/deployer/user.png +0 -0
  49. data/web/public/diagram-viewer/index.html +130 -0
  50. data/web/public/diagram-viewer/js/ActivitiRest.js +74 -0
  51. data/web/public/diagram-viewer/js/ActivityImpl.js +1 -0
  52. data/web/public/diagram-viewer/js/Color.js +603 -0
  53. data/web/public/diagram-viewer/js/LineBreakMeasurer.js +270 -0
  54. data/web/public/diagram-viewer/js/Polyline.js +387 -0
  55. data/web/public/diagram-viewer/js/ProcessDiagramCanvas.js +2172 -0
  56. data/web/public/diagram-viewer/js/ProcessDiagramGenerator.js +1087 -0
  57. data/web/public/diagram-viewer/js/jquery/jquery.asyncqueue.js +125 -0
  58. data/web/public/diagram-viewer/js/jquery/jquery.js +9266 -0
  59. data/web/public/diagram-viewer/js/jquery/jquery.progressbar.js +131 -0
  60. data/web/public/diagram-viewer/js/jstools.js +23 -0
  61. data/web/public/diagram-viewer/js/raphael.2.1.1.js +10 -0
  62. data/web/public/diagram-viewer/js/raphael.js +10 -0
  63. data/web/public/diagram-viewer/js/raphael_uncompressed.js +5815 -0
  64. data/web/public/diagram-viewer/js/textlayout.js +441 -0
  65. data/web/public/diagram-viewer/style.css +1 -0
  66. data/web/public/editor-app/app-cfg.js +25 -0
  67. data/web/public/editor-app/app.js +432 -0
  68. data/web/public/editor-app/configuration/properties/assignment-display-template.html +4 -0
  69. data/web/public/editor-app/configuration/properties/assignment-popup.html +44 -0
  70. data/web/public/editor-app/configuration/properties/assignment-write-template.html +4 -0
  71. data/web/public/editor-app/configuration/properties/boolean-property-template.html +4 -0
  72. data/web/public/editor-app/configuration/properties/condition-expression-display-template.html +2 -0
  73. data/web/public/editor-app/configuration/properties/condition-expression-popup.html +29 -0
  74. data/web/public/editor-app/configuration/properties/condition-expression-write-template.html +4 -0
  75. data/web/public/editor-app/configuration/properties/default-value-display-template.html +4 -0
  76. data/web/public/editor-app/configuration/properties/event-listeners-display-template.html +3 -0
  77. data/web/public/editor-app/configuration/properties/event-listeners-popup.html +115 -0
  78. data/web/public/editor-app/configuration/properties/event-listeners-write-template.html +4 -0
  79. data/web/public/editor-app/configuration/properties/execution-listeners-display-template.html +3 -0
  80. data/web/public/editor-app/configuration/properties/execution-listeners-popup.html +101 -0
  81. data/web/public/editor-app/configuration/properties/execution-listeners-write-template.html +4 -0
  82. data/web/public/editor-app/configuration/properties/feedback-popup.html +17 -0
  83. data/web/public/editor-app/configuration/properties/fields-display-template.html +3 -0
  84. data/web/public/editor-app/configuration/properties/fields-popup.html +61 -0
  85. data/web/public/editor-app/configuration/properties/fields-write-template.html +4 -0
  86. data/web/public/editor-app/configuration/properties/form-properties-display-template.html +3 -0
  87. data/web/public/editor-app/configuration/properties/form-properties-popup.html +93 -0
  88. data/web/public/editor-app/configuration/properties/form-properties-write-template.html +4 -0
  89. data/web/public/editor-app/configuration/properties/in-parameters-display-template.html +3 -0
  90. data/web/public/editor-app/configuration/properties/in-parameters-popup.html +53 -0
  91. data/web/public/editor-app/configuration/properties/in-parameters-write-template.html +4 -0
  92. data/web/public/editor-app/configuration/properties/message-definitions-display-template.html +2 -0
  93. data/web/public/editor-app/configuration/properties/message-definitions-popup.html +50 -0
  94. data/web/public/editor-app/configuration/properties/message-definitions-write-template.html +3 -0
  95. data/web/public/editor-app/configuration/properties/message-property-write-template.html +4 -0
  96. data/web/public/editor-app/configuration/properties/multiinstance-property-write-template.html +8 -0
  97. data/web/public/editor-app/configuration/properties/out-parameters-display-template.html +3 -0
  98. data/web/public/editor-app/configuration/properties/out-parameters-popup.html +53 -0
  99. data/web/public/editor-app/configuration/properties/out-parameters-write-template.html +4 -0
  100. data/web/public/editor-app/configuration/properties/sequenceflow-order-display-template.html +3 -0
  101. data/web/public/editor-app/configuration/properties/sequenceflow-order-popup.html +47 -0
  102. data/web/public/editor-app/configuration/properties/sequenceflow-order-write-template.html +4 -0
  103. data/web/public/editor-app/configuration/properties/signal-definitions-display-template.html +3 -0
  104. data/web/public/editor-app/configuration/properties/signal-definitions-popup.html +58 -0
  105. data/web/public/editor-app/configuration/properties/signal-definitions-write-template.html +4 -0
  106. data/web/public/editor-app/configuration/properties/signal-property-write-template.html +4 -0
  107. data/web/public/editor-app/configuration/properties/string-property-write-mode-template.html +8 -0
  108. data/web/public/editor-app/configuration/properties/subprocess-reference-display-template.html +3 -0
  109. data/web/public/editor-app/configuration/properties/subprocess-reference-popup.html +43 -0
  110. data/web/public/editor-app/configuration/properties/subprocess-reference-write-template.html +4 -0
  111. data/web/public/editor-app/configuration/properties/task-listeners-display-template.html +3 -0
  112. data/web/public/editor-app/configuration/properties/task-listeners-popup.html +102 -0
  113. data/web/public/editor-app/configuration/properties/task-listeners-write-template.html +4 -0
  114. data/web/public/editor-app/configuration/properties/text-popup.html +17 -0
  115. data/web/public/editor-app/configuration/properties/text-property-write-template.html +4 -0
  116. data/web/public/editor-app/configuration/properties-assignment-controller.js +150 -0
  117. data/web/public/editor-app/configuration/properties-condition-expression-controller.js +58 -0
  118. data/web/public/editor-app/configuration/properties-custom-controllers.js +18 -0
  119. data/web/public/editor-app/configuration/properties-default-controllers.js +115 -0
  120. data/web/public/editor-app/configuration/properties-event-listeners-controller.js +266 -0
  121. data/web/public/editor-app/configuration/properties-execution-listeners-controller.js +326 -0
  122. data/web/public/editor-app/configuration/properties-fields-controller.js +192 -0
  123. data/web/public/editor-app/configuration/properties-form-properties-controller.js +192 -0
  124. data/web/public/editor-app/configuration/properties-in-parameters-controller.js +158 -0
  125. data/web/public/editor-app/configuration/properties-message-definitions-controller.js +137 -0
  126. data/web/public/editor-app/configuration/properties-message-scope-controller.js +48 -0
  127. data/web/public/editor-app/configuration/properties-multiinstance-controller.js +34 -0
  128. data/web/public/editor-app/configuration/properties-out-parameters-controller.js +158 -0
  129. data/web/public/editor-app/configuration/properties-sequenceflow-order-controller.js +130 -0
  130. data/web/public/editor-app/configuration/properties-signal-definitions-controller.js +136 -0
  131. data/web/public/editor-app/configuration/properties-signal-scope-controller.js +47 -0
  132. data/web/public/editor-app/configuration/properties-task-listeners-controller.js +325 -0
  133. data/web/public/editor-app/configuration/properties.js +99 -0
  134. data/web/public/editor-app/configuration/toolbar-custom-actions.js +18 -0
  135. data/web/public/editor-app/configuration/toolbar-default-actions.js +429 -0
  136. data/web/public/editor-app/configuration/toolbar.js +175 -0
  137. data/web/public/editor-app/configuration/url-config.js +34 -0
  138. data/web/public/editor-app/css/style-common.css +1518 -0
  139. data/web/public/editor-app/css/style-editor.css +639 -0
  140. data/web/public/editor-app/css/style.css +471 -0
  141. data/web/public/editor-app/editor/css/editor.css +202 -0
  142. data/web/public/editor-app/editor/i18n/translation_de.js +383 -0
  143. data/web/public/editor-app/editor/i18n/translation_en_us.js +423 -0
  144. data/web/public/editor-app/editor/i18n/translation_signavio_de.js +106 -0
  145. data/web/public/editor-app/editor/i18n/translation_signavio_en_us.js +108 -0
  146. data/web/public/editor-app/editor/oryx.debug.js +24510 -0
  147. data/web/public/editor-app/editor/oryx.js +30 -0
  148. data/web/public/editor-app/editor-config.js +32 -0
  149. data/web/public/editor-app/editor-controller.js +65 -0
  150. data/web/public/editor-app/editor-utils.js +135 -0
  151. data/web/public/editor-app/editor.html +136 -0
  152. data/web/public/editor-app/eventbus.js +133 -0
  153. data/web/public/editor-app/fonts/activiti-admin-webfont.eot +0 -0
  154. data/web/public/editor-app/fonts/activiti-admin-webfont.svg +43 -0
  155. data/web/public/editor-app/fonts/activiti-admin-webfont.ttf +0 -0
  156. data/web/public/editor-app/fonts/activiti-admin-webfont.woff +0 -0
  157. data/web/public/editor-app/fonts/glyphicons-halflings-regular.eot +0 -0
  158. data/web/public/editor-app/fonts/glyphicons-halflings-regular.svg +229 -0
  159. data/web/public/editor-app/fonts/glyphicons-halflings-regular.ttf +0 -0
  160. data/web/public/editor-app/fonts/glyphicons-halflings-regular.woff +0 -0
  161. data/web/public/editor-app/header-controller.js +31 -0
  162. data/web/public/editor-app/i18n/en.json +286 -0
  163. data/web/public/editor-app/images/bpmn-error.png +0 -0
  164. data/web/public/editor-app/images/bpmn-warning.png +0 -0
  165. data/web/public/editor-app/images/datadefinition.png +0 -0
  166. data/web/public/editor-app/images/delete.png +0 -0
  167. data/web/public/editor-app/images/loading.gif +0 -0
  168. data/web/public/editor-app/images/logo-2x.png +0 -0
  169. data/web/public/editor-app/images/logo.png +0 -0
  170. data/web/public/editor-app/images/nw-handle-dark.gif +0 -0
  171. data/web/public/editor-app/images/se-handle-dark.gif +0 -0
  172. data/web/public/editor-app/images/shapemenu_highlight.png +0 -0
  173. data/web/public/editor-app/images/wrench.png +0 -0
  174. data/web/public/editor-app/libs/angular-cookies_1.2.13/angular-cookies.min.js +8 -0
  175. data/web/public/editor-app/libs/angular-cookies_1.2.13/angular-cookies.min.js.map +8 -0
  176. data/web/public/editor-app/libs/angular-dragdrop.min-1.0.3.js +9 -0
  177. data/web/public/editor-app/libs/angular-dragdrop_1.0.7/angular-dragdrop.min.js +29 -0
  178. data/web/public/editor-app/libs/angular-mocks_1.2.13/angular-mocks.js +2136 -0
  179. data/web/public/editor-app/libs/angular-resource_1.2.13/angular-resource.js +596 -0
  180. data/web/public/editor-app/libs/angular-resource_1.2.13/angular-resource.min.js +13 -0
  181. data/web/public/editor-app/libs/angular-resource_1.2.13/angular-resource.min.js.map +8 -0
  182. data/web/public/editor-app/libs/angular-route_1.2.13/angular-route.js +921 -0
  183. data/web/public/editor-app/libs/angular-route_1.2.13/angular-route.min.js +14 -0
  184. data/web/public/editor-app/libs/angular-route_1.2.13/angular-route.min.js.map +8 -0
  185. data/web/public/editor-app/libs/angular-sanitize_1.2.13/angular-sanitize.js +625 -0
  186. data/web/public/editor-app/libs/angular-sanitize_1.2.13/angular-sanitize.min.js +14 -0
  187. data/web/public/editor-app/libs/angular-sanitize_1.2.13/angular-sanitize.min.js.map +8 -0
  188. data/web/public/editor-app/libs/angular-scroll_0.5.7/angular-scroll.min.js +1 -0
  189. data/web/public/editor-app/libs/angular-strap_2.0.5/angular-strap.min.js +9 -0
  190. data/web/public/editor-app/libs/angular-strap_2.0.5/angular-strap.tpl.min.js +8 -0
  191. data/web/public/editor-app/libs/angular-translate-loader-static-files/.bower.json +19 -0
  192. data/web/public/editor-app/libs/angular-translate-loader-static-files/angular-translate-loader-static-files.js +31 -0
  193. data/web/public/editor-app/libs/angular-translate-loader-static-files/angular-translate-loader-static-files.min.js +6 -0
  194. data/web/public/editor-app/libs/angular-translate-storage-cookie/.bower.json +20 -0
  195. data/web/public/editor-app/libs/angular-translate-storage-cookie/angular-translate-storage-cookie.js +19 -0
  196. data/web/public/editor-app/libs/angular-translate-storage-cookie/angular-translate-storage-cookie.min.js +6 -0
  197. data/web/public/editor-app/libs/angular-translate_2.4.2/angular-translate.js +960 -0
  198. data/web/public/editor-app/libs/angular-translate_2.4.2/angular-translate.min.js +6 -0
  199. data/web/public/editor-app/libs/angular_1.2.13/angular-animate.min.js +27 -0
  200. data/web/public/editor-app/libs/angular_1.2.13/angular.min.js +204 -0
  201. data/web/public/editor-app/libs/bootstrap-daterangepicker_1.3.7/daterangepicker-bs3.css +267 -0
  202. data/web/public/editor-app/libs/bootstrap-daterangepicker_1.3.7/daterangepicker.js +1026 -0
  203. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap-theme.css +347 -0
  204. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap-theme.css.map +1 -0
  205. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap-theme.min.css +7 -0
  206. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap.css +5785 -0
  207. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap.css.map +1 -0
  208. data/web/public/editor-app/libs/bootstrap_3.1.1/css/bootstrap.min.css +7 -0
  209. data/web/public/editor-app/libs/bootstrap_3.1.1/fonts/glyphicons-halflings-regular.eot +0 -0
  210. data/web/public/editor-app/libs/bootstrap_3.1.1/fonts/glyphicons-halflings-regular.svg +229 -0
  211. data/web/public/editor-app/libs/bootstrap_3.1.1/fonts/glyphicons-halflings-regular.ttf +0 -0
  212. data/web/public/editor-app/libs/bootstrap_3.1.1/fonts/glyphicons-halflings-regular.woff +0 -0
  213. data/web/public/editor-app/libs/bootstrap_3.1.1/js/bootstrap.js +1951 -0
  214. data/web/public/editor-app/libs/bootstrap_3.1.1/js/bootstrap.min.js +6 -0
  215. data/web/public/editor-app/libs/es5-shim-15.3.4.5/.bower.json +14 -0
  216. data/web/public/editor-app/libs/es5-shim-15.3.4.5/.gitignore +2 -0
  217. data/web/public/editor-app/libs/es5-shim-15.3.4.5/CHANGES +93 -0
  218. data/web/public/editor-app/libs/es5-shim-15.3.4.5/CONTRIBUTORS.md +25 -0
  219. data/web/public/editor-app/libs/es5-shim-15.3.4.5/LICENSE +19 -0
  220. data/web/public/editor-app/libs/es5-shim-15.3.4.5/README.md +161 -0
  221. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-sham.js +444 -0
  222. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-sham.map +1 -0
  223. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-sham.min.js +4 -0
  224. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-shim.js +1314 -0
  225. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-shim.map +1 -0
  226. data/web/public/editor-app/libs/es5-shim-15.3.4.5/es5-shim.min.js +4 -0
  227. data/web/public/editor-app/libs/es5-shim-15.3.4.5/package.json +34 -0
  228. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/helpers/h-kill.js +64 -0
  229. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/helpers/h-matchers.js +34 -0
  230. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/helpers/h.js +3 -0
  231. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/index.html +64 -0
  232. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/index.min.html +63 -0
  233. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/lib/jasmine-html.js +190 -0
  234. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/lib/jasmine.css +166 -0
  235. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/lib/jasmine.js +2477 -0
  236. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/lib/jasmine_favicon.png +0 -0
  237. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/lib/json2.js +478 -0
  238. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-array.js +1223 -0
  239. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-date.js +152 -0
  240. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-function.js +147 -0
  241. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-number.js +14 -0
  242. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-object.js +181 -0
  243. data/web/public/editor-app/libs/es5-shim-15.3.4.5/tests/spec/s-string.js +204 -0
  244. data/web/public/editor-app/libs/jquery-ui-1.10.3.custom.min.js +6 -0
  245. data/web/public/editor-app/libs/jquery.autogrow-textarea.js +61 -0
  246. data/web/public/editor-app/libs/jquery_1.11.0/jquery.js +9789 -0
  247. data/web/public/editor-app/libs/jquery_1.11.0/jquery.min.js +4 -0
  248. data/web/public/editor-app/libs/jquery_1.11.0/jquery.min.map +1 -0
  249. data/web/public/editor-app/libs/json3_3.2.6/LICENSE +20 -0
  250. data/web/public/editor-app/libs/json3_3.2.6/lib/json3.js +861 -0
  251. data/web/public/editor-app/libs/json3_3.2.6/lib/json3.min.js +18 -0
  252. data/web/public/editor-app/libs/momentjs_2.5.1/momentjs.min.js +6 -0
  253. data/web/public/editor-app/libs/mousetrap-1.4.5.min.js +9 -0
  254. data/web/public/editor-app/libs/ng-grid-2.0.7-min.js +2 -0
  255. data/web/public/editor-app/libs/ng-grid-2.0.7.min.css +1 -0
  256. data/web/public/editor-app/libs/path_parser.js +30 -0
  257. data/web/public/editor-app/libs/prototype-1.5.1.js +3272 -0
  258. data/web/public/editor-app/libs/ui-utils.min-0.0.4.js +7 -0
  259. data/web/public/editor-app/partials/root-stencil-item-template.html +11 -0
  260. data/web/public/editor-app/partials/stencil-item-template.html +27 -0
  261. data/web/public/editor-app/plugins.xml +58 -0
  262. data/web/public/editor-app/popups/icon-template.html +3 -0
  263. data/web/public/editor-app/popups/save-model.html +41 -0
  264. data/web/public/editor-app/popups/select-shape.html +20 -0
  265. data/web/public/editor-app/popups/unsaved-changes.html +22 -0
  266. data/web/public/editor-app/select-shape-controller.js +314 -0
  267. data/web/public/editor-app/stencil-controller.js +1421 -0
  268. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/event.subprocess.collapsed.png +0 -0
  269. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/event.subprocess.png +0 -0
  270. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/expanded.subprocess.png +0 -0
  271. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.business.rule.png +0 -0
  272. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.camel.png +0 -0
  273. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.manual.png +0 -0
  274. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.mule.png +0 -0
  275. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.receive.png +0 -0
  276. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.script.png +0 -0
  277. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.send.png +0 -0
  278. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.service.png +0 -0
  279. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.shell.png +0 -0
  280. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/list/type.user.png +0 -0
  281. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/subprocess.png +0 -0
  282. data/web/public/editor-app/stencilsets/bpmn2.0/icons/activity/task.png +0 -0
  283. data/web/public/editor-app/stencilsets/bpmn2.0/icons/artifact/text.annotation.png +0 -0
  284. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/cancel.png +0 -0
  285. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/compensation.png +0 -0
  286. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/error.png +0 -0
  287. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/message.png +0 -0
  288. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/signal.png +0 -0
  289. data/web/public/editor-app/stencilsets/bpmn2.0/icons/catching/timer.png +0 -0
  290. data/web/public/editor-app/stencilsets/bpmn2.0/icons/connector/association.undirected.png +0 -0
  291. data/web/public/editor-app/stencilsets/bpmn2.0/icons/connector/association.unidirectional.png +0 -0
  292. data/web/public/editor-app/stencilsets/bpmn2.0/icons/connector/messageflow.png +0 -0
  293. data/web/public/editor-app/stencilsets/bpmn2.0/icons/connector/sequenceflow.png +0 -0
  294. data/web/public/editor-app/stencilsets/bpmn2.0/icons/dataobject/data.store.png +0 -0
  295. data/web/public/editor-app/stencilsets/bpmn2.0/icons/diagram.png +0 -0
  296. data/web/public/editor-app/stencilsets/bpmn2.0/icons/endevent/cancel.png +0 -0
  297. data/web/public/editor-app/stencilsets/bpmn2.0/icons/endevent/error.png +0 -0
  298. data/web/public/editor-app/stencilsets/bpmn2.0/icons/endevent/none.png +0 -0
  299. data/web/public/editor-app/stencilsets/bpmn2.0/icons/endevent/terminate.png +0 -0
  300. data/web/public/editor-app/stencilsets/bpmn2.0/icons/gateway/eventbased.png +0 -0
  301. data/web/public/editor-app/stencilsets/bpmn2.0/icons/gateway/exclusive.databased.png +0 -0
  302. data/web/public/editor-app/stencilsets/bpmn2.0/icons/gateway/inclusive.png +0 -0
  303. data/web/public/editor-app/stencilsets/bpmn2.0/icons/gateway/parallel.png +0 -0
  304. data/web/public/editor-app/stencilsets/bpmn2.0/icons/startevent/error.png +0 -0
  305. data/web/public/editor-app/stencilsets/bpmn2.0/icons/startevent/message.png +0 -0
  306. data/web/public/editor-app/stencilsets/bpmn2.0/icons/startevent/none.png +0 -0
  307. data/web/public/editor-app/stencilsets/bpmn2.0/icons/startevent/signal.png +0 -0
  308. data/web/public/editor-app/stencilsets/bpmn2.0/icons/startevent/timer.png +0 -0
  309. data/web/public/editor-app/stencilsets/bpmn2.0/icons/swimlane/lane.png +0 -0
  310. data/web/public/editor-app/stencilsets/bpmn2.0/icons/swimlane/pool.png +0 -0
  311. data/web/public/editor-app/stencilsets/bpmn2.0/icons/throwing/none.png +0 -0
  312. data/web/public/editor-app/stencilsets/bpmn2.0/icons/throwing/signal.png +0 -0
  313. data/web/public/editor-app/toolbar-controller.js +162 -0
  314. data/web/public/modeler.html +140 -0
  315. data/web/views/models/index.erb +32 -0
  316. data/web/views/models/new.erb +15 -0
  317. metadata +334 -10
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9f0a93eb101989b4848b8163247a7bc291af024a
4
- data.tar.gz: 2206467cd0bac8c5affab560814b82a37cf8a5ee
3
+ metadata.gz: c6ff969809f34fc0b4cd64e28d676bf2bd266283
4
+ data.tar.gz: 68569faeaa5e3612a0133a3380a547bb223b4287
5
5
  SHA512:
6
- metadata.gz: ab7464720bfeaea53b840e408d2dbafb1a6140b5b578661a02c7fa70a22d304af4b0ad3227280cba1198a9173d7daebfab580c694eb3e8413cc91cce5290ad15
7
- data.tar.gz: 3dffa1d82d9325692cdee98c3b426614dd47596fc3f2f86d278f258c8526c6911190a964062c5961490326546fdb283fd736a5c128f7136616789b05e3a232c4
6
+ metadata.gz: c059cdc3e300d51768bdff4beb268ec96cd5e8e552e19a8e26e1a4be916c63737bc59fb539f92016e78e71721e20449609efec8a46813df76050fede7c125960
7
+ data.tar.gz: c9dbd6e9fe5942cd0718c0a25640c9155df3967912519ebda9da5539d09c0c7ce2779998e8f4c9b85c37ba13d84f59527b6bb1204b9dbcba5bb77ac94bbfe91a
data/.gitignore CHANGED
@@ -13,4 +13,6 @@
13
13
  *.a
14
14
  mkmf.log
15
15
  /.jbundler/
16
- *.gem
16
+ *.gem
17
+ /java/target/
18
+ /.mvn/
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- jruby-9.0.3.0
1
+ jruby-9.0.4.0
data/CHANGELOG CHANGED
@@ -1,3 +1,9 @@
1
+ ## v2.0.0
2
+ * Integrate Activiti Modeler
3
+ * [TODO] Integrate Activiti Diagram Viewer
4
+ * [TODO] Add Web View for models CRUD
5
+
6
+
1
7
  ## v1.0.0
2
8
 
3
9
  * Initial release
data/Jarfile CHANGED
@@ -1,3 +1,8 @@
1
1
  jar 'org.activiti:activiti-engine', '~> 5.19'
2
2
  jar 'org.slf4j:slf4j-log4j12', '>= 1.7'
3
3
  jar 'com.h2database:h2', '>= 1.4'
4
+
5
+ jar 'org.activiti:activiti-modeler', '~> 5.19'
6
+ #jar 'com.fasterxml.jackson.core:jackson-databind', '2.2.3'
7
+ #jar 'org.apache.xmlgraphics:batik-transcoder', '1.7'
8
+ #jar 'org.apache.xmlgraphics:batik-codec', '1.7'
data/Jarfile.lock CHANGED
@@ -1,25 +1,64 @@
1
1
  ---
2
2
  :runtime:
3
3
  - org.activiti:activiti-bpmn-converter:jar:5.19.0
4
- - org.apache.commons:commons-email:jar:1.4
4
+ - log4j:log4j:jar:1.2.17
5
+ - org.yaml:snakeyaml:jar:1.14
6
+ - aopalliance:aopalliance:jar:1.0
7
+ - org.apache.xmlgraphics:batik-svggen:jar:1.7
8
+ - org.springframework.security:spring-security-core:jar:3.2.3.RELEASE
9
+ - org.apache.xmlgraphics:xmlgraphics-commons:jar:1.2
10
+ - org.apache.xmlgraphics:batik-util:jar:1.7
11
+ - org.apache.xmlgraphics:batik-gvt:jar:1.7
12
+ - org.apache.avalon.framework:avalon-framework-impl:jar:4.3.1
13
+ - org.activiti:activiti-modeler:jar:5.19.0
14
+ - org.slf4j:slf4j-log4j12:jar:1.7.13
15
+ - org.apache.xmlgraphics:batik-parser:jar:1.7
16
+ - xml-apis:xml-apis-ext:jar:1.3.04
17
+ - org.apache.xmlgraphics:batik-script:jar:1.7
18
+ - org.springframework:spring-beans:jar:4.1.5.RELEASE
19
+ - org.apache.xmlgraphics:batik-bridge:jar:1.7
20
+ - org.apache.avalon.framework:avalon-framework-api:jar:4.3.1
21
+ - org.apache.xmlgraphics:batik-svg-dom:jar:1.7
5
22
  - org.activiti:activiti-bpmn-model:jar:5.19.0
6
23
  - org.activiti:activiti-engine:jar:5.19.0
7
- - com.sun.mail:javax.mail:jar:1.5.2
8
- - log4j:log4j:jar:1.2.17
24
+ - org.springframework:spring-aop:jar:4.1.5.RELEASE
25
+ - org.apache.xmlgraphics:batik-js:jar:1.7
26
+ - org.springframework:spring-expression:jar:4.1.5.RELEASE
27
+ - org.springframework.security:spring-security-config:jar:3.2.3.RELEASE
28
+ - xml-apis:xml-apis:jar:1.3.04
29
+ - math.geom2d:javaGeom:jar:0.11.1
30
+ - org.apache.xmlgraphics:fop:jar:0.94
31
+ - org.apache.xmlgraphics:batik-dom:jar:1.7
32
+ - org.apache.commons:commons-lang3:jar:3.3.2
33
+ - org.activiti:activiti-common-rest:jar:5.19.0
34
+ - com.fasterxml.jackson.core:jackson-core:jar:2.2.3
35
+ - org.activiti:activiti-json-converter:jar:5.19.0
36
+ - org.apache.xmlgraphics:batik-codec:jar:1.7
9
37
  - org.slf4j:slf4j-api:jar:1.7.6
10
- - org.yaml:snakeyaml:jar:1.14
11
- - com.fasterxml.jackson.core:jackson-databind:jar:2.2.3
38
+ - org.springframework:spring-webmvc:jar:4.1.5.RELEASE
39
+ - org.apache.xmlgraphics:batik-css:jar:1.7
40
+ - org.springframework:spring-context:jar:4.1.5.RELEASE
12
41
  - org.springframework:spring-core:jar:4.1.5.RELEASE
13
- - commons-logging:commons-logging:jar:1.2
42
+ - org.apache.xmlgraphics:batik-awt-util:jar:1.7
43
+ - commons-collections:commons-collections:jar:3.2.1
44
+ - commons-logging:commons-logging:jar:1.0.4
45
+ - org.apache.xmlgraphics:batik-xml:jar:1.7
14
46
  - org.slf4j:jcl-over-slf4j:jar:1.7.6
15
- - org.activiti:activiti-process-validation:jar:5.19.0
16
47
  - org.mybatis:mybatis:jar:3.2.5
17
48
  - com.h2database:h2:jar:1.4.190
49
+ - org.springframework:spring-web:jar:4.1.5.RELEASE
50
+ - org.springframework.security:spring-security-crypto:jar:3.2.3.RELEASE
18
51
  - org.activiti:activiti-image-generator:jar:5.19.0
19
- - com.fasterxml.jackson.core:jackson-annotations:jar:2.2.3
20
- - joda-time:joda-time:jar:2.6
21
52
  - javax.activation:activation:jar:1.1.1
22
- - org.apache.commons:commons-lang3:jar:3.3.2
23
- - com.fasterxml.jackson.core:jackson-core:jar:2.2.3
24
- - org.slf4j:slf4j-log4j12:jar:1.7.12
25
- - org.springframework:spring-beans:jar:4.1.5.RELEASE
53
+ - org.apache.commons:commons-email:jar:1.4
54
+ - com.sun.mail:javax.mail:jar:1.5.2
55
+ - org.springframework:spring-tx:jar:4.1.5.RELEASE
56
+ - com.fasterxml.jackson.core:jackson-databind:jar:2.2.3
57
+ - org.activiti:activiti-process-validation:jar:5.19.0
58
+ - org.apache.xmlgraphics:batik-transcoder:jar:1.7
59
+ - joda-time:joda-time:jar:2.6
60
+ - com.fasterxml.jackson.core:jackson-annotations:jar:2.2.3
61
+ - commons-io:commons-io:jar:1.1
62
+ - org.apache.xmlgraphics:batik-anim:jar:1.7
63
+ - org.springframework.security:spring-security-web:jar:3.2.3.RELEASE
64
+ - org.apache.xmlgraphics:batik-ext:jar:1.7
data/README.md CHANGED
@@ -1,17 +1,13 @@
1
1
  # JrubyActiviti
2
2
 
3
- You can directly access Activiti BPM in JRuby/Rails Application.
3
+ Integrate Activiti BPM in JRuby/Rails, including Activiti Engine, Modeler and Diagram Viewer.
4
4
 
5
5
  ## Test Environment
6
- JRuby-9.0.3.0, Activiti-5.19.0
6
+ JRuby-9.0.4.0, Activiti-5.19.0
7
7
 
8
8
  ## Installation
9
9
 
10
- Add this line to your application's Gemfile:
11
-
12
- ```ruby
13
- gem 'jruby_activiti'
14
- ```
10
+ Edit your application's Gemfile, add `gem 'jruby_activiti'`, and must remove `gem 'therubyrhino'` line.
15
11
 
16
12
  Run the `bundle install` command to install it.
17
13
 
@@ -28,10 +24,14 @@ create Jarfile
28
24
  create log4j.properties
29
25
  create config/activiti.cfg.xml
30
26
  create config/initializers/jruby_activiti.rb
27
+ route mount JrubyActiviti::Web => '/activiti' if defined?(JrubyActiviti)
31
28
  ```
32
29
 
30
+ Add db jar in Jarfile. Example: `jar 'com.h2database:h2', '>= 1.4'`
31
+
33
32
  And then execute `jbundle install`
34
33
 
34
+
35
35
  ## Usage
36
36
  You can access Activiti directly by using `Activiti`. For example, in a Rails controller
37
37
 
@@ -50,8 +50,20 @@ Activiti::RepositoryService.createDeployment().
50
50
  deploy()
51
51
  ```
52
52
 
53
- ## Warning
54
- Do not create Activiti Engine in a Rails application repeatedly. Otherwise you will get exception `log writing failed. Bad file descriptor - Bad file descriptor`
53
+ ## Enable Activiti Modeler and Diagram Viewer in Rails
54
+ visit `localhost:3000/activiti`
55
+
56
+ Modeler
57
+ `/activiti/modeler.html?modelId=your_model_id`
58
+
59
+ View Process Definition in Diagram Viewer
60
+ `/activiti/diagram-viewer/index.html?processDefinitionId=v1`
61
+
62
+ View Process Instance in Diagram Viewer
63
+ `/activiti/diagram-viewer/index.html?processDefinitionId=v1&processInstanceId=v2`
64
+
65
+ ## Known Issue
66
+ `org.activiti:activiti-modeler` includes `org.apache.xmlgraphics:batik-transcoder`, that depends on outdated `org.mozilla:rhino`, which conflicts with rubygem `therubyrhino`. So you must to install `nodejs` in your machine and comment `gem 'therubyrhino'` in `Gemfile`.
55
67
 
56
68
  ## Thanks
57
69
  Inspired by https://github.com/boberetezeke/jruby-activiti
data/java/build.md ADDED
@@ -0,0 +1,3 @@
1
+ ```
2
+ mvn package
3
+ ```
data/java/mapping.md ADDED
@@ -0,0 +1,20 @@
1
+ Modeler.java
2
+ save => org.activiti.rest.editor.model.ModelSaveRestResource.saveModel
3
+ add initialize funciton
4
+ relace MultiValueMap with HashMap
5
+ replace getFirst with get
6
+ show => org.activiti.rest.editor.model.ModelEditorJsonRestResource.getEditorJson
7
+ add initialize funciton
8
+
9
+
10
+ StencilsetResource.java
11
+ getStencilset => org.activiti.rest.editor.main.StencilsetRestResource.getStencilset
12
+
13
+
14
+ ProcessDiagram.java => org.activiti.rest.diagram.services.BaseProcessDefinitionDiagramLayoutResource
15
+ add initialize funciton
16
+
17
+
18
+
19
+ public/editor-app/app-cfg.js
20
+ from `'contextRoot' : '/activiti-explorer/service'` to `'contextRoot' : 'service'`
data/java/pom.xml ADDED
@@ -0,0 +1,30 @@
1
+ <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3
+ <modelVersion>4.0.0</modelVersion>
4
+
5
+ <groupId>richfisher</groupId>
6
+ <artifactId>jrubyactiviti</artifactId>
7
+ <version>2.0</version>
8
+ <packaging>jar</packaging>
9
+
10
+ <name>Maven Quick Start Archetype</name>
11
+ <url>http://maven.apache.org</url>
12
+
13
+ <dependencies>
14
+ <dependency>
15
+ <groupId>org.activiti</groupId>
16
+ <artifactId>activiti-engine</artifactId>
17
+ <version>5.19.0</version>
18
+ </dependency>
19
+ <dependency>
20
+ <groupId>org.activiti</groupId>
21
+ <artifactId>activiti-modeler</artifactId>
22
+ <version>5.19.0</version>
23
+ </dependency>
24
+ <dependency>
25
+ <groupId>org.activiti</groupId>
26
+ <artifactId>activiti-diagram-rest</artifactId>
27
+ <version>5.19.0</version>
28
+ </dependency>
29
+ </dependencies>
30
+ </project>
@@ -0,0 +1,95 @@
1
+ package jrubyactiviti;
2
+
3
+ import java.io.ByteArrayInputStream;
4
+ import java.io.ByteArrayOutputStream;
5
+ import java.io.InputStream;
6
+ import java.util.HashMap;
7
+
8
+ import org.activiti.engine.ActivitiException;
9
+ import org.activiti.engine.RepositoryService;
10
+ import org.activiti.engine.repository.Model;
11
+ import org.apache.batik.transcoder.TranscoderInput;
12
+ import org.apache.batik.transcoder.TranscoderOutput;
13
+ import org.apache.batik.transcoder.image.PNGTranscoder;
14
+
15
+ import com.fasterxml.jackson.databind.ObjectMapper;
16
+ import com.fasterxml.jackson.databind.node.ObjectNode;
17
+
18
+ import org.apache.commons.lang3.StringUtils;
19
+
20
+ public class Modeler {
21
+ final String MODEL_ID = "modelId";
22
+ final String MODEL_NAME = "name";
23
+ final String MODEL_REVISION = "revision";
24
+ final String MODEL_DESCRIPTION = "description";
25
+
26
+ private RepositoryService repositoryService;
27
+ private ObjectMapper objectMapper;
28
+
29
+ public Modeler(RepositoryService repositoryService) {
30
+ this.repositoryService = repositoryService;
31
+ this.objectMapper = new ObjectMapper();
32
+ }
33
+
34
+ public void save(String modelId, HashMap<String, String> values) {
35
+ try {
36
+ Model model = repositoryService.getModel(modelId);
37
+
38
+ ObjectNode modelJson = (ObjectNode) objectMapper.readTree(model.getMetaInfo());
39
+
40
+ modelJson.put(MODEL_NAME, values.get("name"));
41
+ modelJson.put(MODEL_DESCRIPTION, values.get("description"));
42
+ model.setMetaInfo(modelJson.toString());
43
+ model.setName(values.get("name"));
44
+
45
+ repositoryService.saveModel(model);
46
+
47
+ repositoryService.addModelEditorSource(model.getId(), values.get("json_xml").getBytes("utf-8"));
48
+
49
+ InputStream svgStream = new ByteArrayInputStream(values.get("svg_xml").getBytes("utf-8"));
50
+ TranscoderInput input = new TranscoderInput(svgStream);
51
+
52
+ PNGTranscoder transcoder = new PNGTranscoder();
53
+ // Setup output
54
+ ByteArrayOutputStream outStream = new ByteArrayOutputStream();
55
+ TranscoderOutput output = new TranscoderOutput(outStream);
56
+
57
+ // Do the transformation
58
+ transcoder.transcode(input, output);
59
+ final byte[] result = outStream.toByteArray();
60
+ repositoryService.addModelEditorSourceExtra(model.getId(), result);
61
+ outStream.close();
62
+ } catch (Exception e) {
63
+ System.out.println("Error saving model"+e);
64
+ // LOGGER.error("Error saving model", e);
65
+ throw new ActivitiException("Error saving model", e);
66
+ }
67
+ }
68
+
69
+ public ObjectNode show(String modelId) {
70
+ ObjectNode modelNode = null;
71
+
72
+ Model model = repositoryService.getModel(modelId);
73
+
74
+ if (model != null) {
75
+ try {
76
+ if (StringUtils.isNotEmpty(model.getMetaInfo())) {
77
+ modelNode = (ObjectNode) objectMapper.readTree(model.getMetaInfo());
78
+ } else {
79
+ modelNode = objectMapper.createObjectNode();
80
+ modelNode.put(MODEL_NAME, model.getName());
81
+ }
82
+ modelNode.put(MODEL_ID, model.getId());
83
+ ObjectNode editorJsonNode = (ObjectNode) objectMapper.readTree(
84
+ new String(repositoryService.getModelEditorSource(model.getId()), "utf-8"));
85
+ modelNode.put("model", editorJsonNode);
86
+
87
+ } catch (Exception e) {
88
+ System.out.println("Error creating model JSON"+e);
89
+ // LOGGER.error("Error creating model JSON", e);
90
+ throw new ActivitiException("Error creating model JSON", e);
91
+ }
92
+ }
93
+ return modelNode;
94
+ }
95
+ }