cpee 2.1.52 → 2.1.54
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/cockpit/css/{resources.css → resources-label.css} +0 -7
- data/cockpit/css/resources-svg.css +20 -0
- data/cockpit/css/ui.css +0 -4
- data/cockpit/edit.html +5 -1
- data/cockpit/graph.html +4 -0
- data/cockpit/index.html +3 -2
- data/cockpit/js/details.js +4 -14
- data/cockpit/js/edit.js +3 -0
- data/cockpit/js/instance.js +129 -139
- data/cockpit/js/modifiers.js +4 -14
- data/cockpit/js/parameters.js +4 -10
- data/cockpit/js/wfadaptor.js +0 -27
- data/cockpit/model.html +2 -0
- data/cockpit/templates/Coopis 2010.xml +8 -1
- data/cockpit/templates/Worklist.xml +6 -7
- data/cockpit/themes/compact/rngs/call.rng +3 -3
- data/cockpit/themes/compact/rngs/callmanipulate.rng +3 -3
- data/cockpit/themes/compact/rngs/parallel.rng +2 -2
- data/cockpit/themes/compact/rngs/start.rng +3 -3
- data/cockpit/themes/compact/theme.js +38 -22
- data/cockpit/themes/control/rngs/call.rng +3 -3
- data/cockpit/themes/control/rngs/callmanipulate.rng +3 -3
- data/cockpit/themes/control/rngs/parallel.rng +2 -2
- data/cockpit/themes/control/rngs/start.rng +3 -3
- data/cockpit/themes/control/theme.js +76 -10
- data/cockpit/themes/dataflow/rngs/call.rng +3 -3
- data/cockpit/themes/dataflow/rngs/callmanipulate.rng +3 -3
- data/cockpit/themes/dataflow/rngs/parallel.rng +2 -2
- data/cockpit/themes/dataflow/rngs/start.rng +3 -3
- data/cockpit/themes/dataflow/theme.js +48 -32
- data/cockpit/themes/default/rngs/call.rng +3 -3
- data/cockpit/themes/default/rngs/callmanipulate.rng +3 -3
- data/cockpit/themes/default/rngs/parallel.rng +2 -2
- data/cockpit/themes/default/rngs/start.rng +3 -3
- data/cockpit/themes/default/theme.js +38 -22
- data/cockpit/themes/extended/rngs/call.rng +3 -3
- data/cockpit/themes/extended/rngs/callmanipulate.rng +3 -3
- data/cockpit/themes/extended/rngs/parallel.rng +2 -2
- data/cockpit/themes/extended/rngs/start.rng +3 -3
- data/cockpit/themes/extended/theme.js +38 -22
- data/cockpit/themes/felix/rngs/alternative.rng +25 -0
- data/cockpit/themes/felix/rngs/call.rng +229 -0
- data/cockpit/themes/felix/rngs/callmanipulate.rng +259 -0
- data/cockpit/themes/felix/rngs/choose.rng +14 -0
- data/cockpit/themes/felix/rngs/closed_loop.rng +62 -0
- data/cockpit/themes/felix/rngs/closed_loop_cancel.rng +5 -0
- data/cockpit/themes/felix/rngs/closed_loop_control.rng +31 -0
- data/cockpit/themes/felix/rngs/closed_loop_measuring.rng +12 -0
- data/cockpit/themes/felix/rngs/critical.rng +5 -0
- data/cockpit/themes/felix/rngs/escape.rng +1 -0
- data/cockpit/themes/felix/rngs/group.rng +3 -0
- data/cockpit/themes/felix/rngs/loop.rng +22 -0
- data/cockpit/themes/felix/rngs/manipulate.rng +20 -0
- data/cockpit/themes/felix/rngs/otherwise.rng +22 -0
- data/cockpit/themes/felix/rngs/parallel.rng +27 -0
- data/cockpit/themes/felix/rngs/parallel_branch.rng +2 -0
- data/cockpit/themes/felix/rngs/scripts.rng +23 -0
- data/cockpit/themes/felix/rngs/start.rng +121 -0
- data/cockpit/themes/felix/rngs/stop.rng +5 -0
- data/cockpit/themes/felix/rngs/terminate.rng +1 -0
- data/cockpit/themes/felix/symbols/alternative.svg +5 -0
- data/cockpit/themes/felix/symbols/arrow.svg +3 -0
- data/cockpit/themes/felix/symbols/call.svg +6 -0
- data/cockpit/themes/felix/symbols/call_sensor.svg +9 -0
- data/cockpit/themes/felix/symbols/callmanipulate.svg +8 -0
- data/cockpit/themes/felix/symbols/callmanipulate_sensor.svg +11 -0
- data/cockpit/themes/felix/symbols/choose.svg +5 -0
- data/cockpit/themes/felix/symbols/choose_exclusive.svg +5 -0
- data/cockpit/themes/felix/symbols/choose_inclusive.svg +4 -0
- data/cockpit/themes/felix/symbols/closed_loop.svg +5 -0
- data/cockpit/themes/felix/symbols/closed_loop_cancel.svg +5 -0
- data/cockpit/themes/felix/symbols/closed_loop_control.svg +5 -0
- data/cockpit/themes/felix/symbols/closed_loop_measuring.svg +6 -0
- data/cockpit/themes/felix/symbols/complex.svg +8 -0
- data/cockpit/themes/felix/symbols/critical.svg +4 -0
- data/cockpit/themes/felix/symbols/delete.svg +4 -0
- data/cockpit/themes/felix/symbols/end.svg +3 -0
- data/cockpit/themes/felix/symbols/escape.svg +5 -0
- data/cockpit/themes/felix/symbols/event_end.svg +3 -0
- data/cockpit/themes/felix/symbols/loop.svg +5 -0
- data/cockpit/themes/felix/symbols/manipulate.svg +4 -0
- data/cockpit/themes/felix/symbols/otherwise.svg +5 -0
- data/cockpit/themes/felix/symbols/parallel.svg +5 -0
- data/cockpit/themes/felix/symbols/parallel_branch.svg +5 -0
- data/cockpit/themes/felix/symbols/parallel_branch_compact.svg +4 -0
- data/cockpit/themes/felix/symbols/parallel_branch_event.svg +14 -0
- data/cockpit/themes/felix/symbols/parallel_branch_normal.svg +5 -0
- data/cockpit/themes/felix/symbols/parallel_eventbased_exclusive.svg +9 -0
- data/cockpit/themes/felix/symbols/parallel_eventbased_parallel.svg +8 -0
- data/cockpit/themes/felix/symbols/scripts.svg +4 -0
- data/cockpit/themes/felix/symbols/start.svg +3 -0
- data/cockpit/themes/felix/symbols/start_event.svg +5 -0
- data/cockpit/themes/felix/symbols/stop.svg +5 -0
- data/cockpit/themes/felix/symbols/terminate.svg +4 -0
- data/cockpit/themes/felix/theme.js +1531 -0
- data/cockpit/themes/model/rngs/call.rng +10 -10
- data/cockpit/themes/model/rngs/callmanipulate.rng +10 -10
- data/cockpit/themes/model/theme.js +14 -3
- data/cockpit/themes/packed/rngs/call.rng +3 -3
- data/cockpit/themes/packed/rngs/callmanipulate.rng +3 -3
- data/cockpit/themes/packed/rngs/parallel.rng +2 -2
- data/cockpit/themes/packed/rngs/start.rng +3 -3
- data/cockpit/themes/packed/theme.js +38 -22
- data/cockpit/themes/preset/rngs/call.rng +3 -3
- data/cockpit/themes/preset/rngs/callmanipulate.rng +3 -3
- data/cockpit/themes/preset/rngs/parallel.rng +2 -2
- data/cockpit/themes/preset/rngs/start.rng +3 -3
- data/cockpit/themes/preset/theme.js +38 -22
- data/cockpit/track.html +4 -0
- data/cpee.gemspec +1 -1
- data/lib/cpee/implementation.rb +1 -1
- data/lib/cpee/implementation_properties.rb +23 -13
- data/lib/properties/state.rng +0 -2
- data/lib/properties.xml +0 -1
- data/server/executionhandlers/ruby/connection.rb +25 -16
- data/server/executionhandlers/ruby/controller.rb +1 -1
- data/server/executionhandlers/ruby/dsl_to_dslx.xsl +71 -61
- data/server/resources/states.dot +0 -4
- data/server/resources/states.xml +0 -6
- data/server/routing/end.pid +1 -0
- data/server/routing/forward-events-00.pid +1 -0
- data/server/routing/forward-votes.pid +1 -0
- data/server/routing/persist.pid +1 -0
- metadata +63 -17
- data/cockpit/css/replay.css +0 -55
- data/cockpit/js/replay.js +0 -40
- data/cockpit/replay.html +0 -53
- data/cockpit/themes/compact/symbols/test.svg +0 -74
- data/cockpit/themes/control/symbols/test.svg +0 -74
- data/cockpit/themes/dataflow/symbols/test.svg +0 -74
- data/cockpit/themes/default/symbols/test.svg +0 -74
- data/cockpit/themes/extended/symbols/test.svg +0 -74
- data/cockpit/themes/model/symbols/test.svg +0 -74
- data/cockpit/themes/packed/symbols/test.svg +0 -74
- data/cockpit/themes/preset/symbols/test.svg +0 -74
- data/server/executionhandlers/ruby/desc.xml +0 -107
- data/server/resources/test.pdf +0 -0
- data/server/server.conf +0 -4
data/cockpit/js/wfadaptor.js
CHANGED
|
@@ -228,24 +228,6 @@ function WfIllustrator(wf_adaptor) { // View {{{
|
|
|
228
228
|
return g;
|
|
229
229
|
} // }}}
|
|
230
230
|
|
|
231
|
-
var draw_label = this.draw.draw_label = function (tname, id, label, row, col, group) { // {{{
|
|
232
|
-
var g = $X('<text class="label" transform="translate(' + String(col*self.width-self.width_shift) + ',' + String(row*self.height+20-(self.height-self.height_shift)) + ')" xmlns="http://www.w3.org/2000/svg"></text>');
|
|
233
|
-
var spli = $(label.split(/\n/));
|
|
234
|
-
spli.each(function(k,v) {
|
|
235
|
-
var tspan = $X('<tspan x="0" dy="' + (spli.length > 1 ? '-7' : '0') + '" xmlns="http://www.w3.org/2000/svg"></tspan>');
|
|
236
|
-
if (k == 0) {
|
|
237
|
-
tspan.text(v);
|
|
238
|
-
} else {
|
|
239
|
-
tspan.text(v);
|
|
240
|
-
tspan.attr('dy','15');
|
|
241
|
-
tspan.attr('dx','15');
|
|
242
|
-
}
|
|
243
|
-
g.append(tspan);
|
|
244
|
-
});
|
|
245
|
-
if(group) { group.find('g.element[element-id=' + id + ']').append(g); }
|
|
246
|
-
else {self.svg.container.append(g);}
|
|
247
|
-
return g;
|
|
248
|
-
} // }}}
|
|
249
231
|
var draw_symbol = this.draw.draw_symbol = function (sname, id, title, row, col, group, addition) { // {{{
|
|
250
232
|
if(self.elements[sname] == undefined || self.elements[sname].svg == undefined) sname = 'unknown';
|
|
251
233
|
if (addition) {
|
|
@@ -380,15 +362,6 @@ function WfDescription(wf_adaptor, wf_illustrator) { // Model {{{
|
|
|
380
362
|
} else {
|
|
381
363
|
adaptor.draw_labels(graph.max,[],{ 'height': illustrator.height, 'height_shift': illustrator.height_shift },false);
|
|
382
364
|
}
|
|
383
|
-
if (illustrator.compact == false) {
|
|
384
|
-
if (labels.length > 0) {
|
|
385
|
-
_.each(labels,function(a,key) {
|
|
386
|
-
if (a.label && a.label[0] && a.label[0].column == 'Label' && a.label[0].value) {
|
|
387
|
-
illustrator.draw.draw_label(a.tname, a.element_id, a.label[0].value, a.row, graph.max.col + 1, graph.svg);
|
|
388
|
-
}
|
|
389
|
-
});
|
|
390
|
-
}
|
|
391
|
-
}
|
|
392
365
|
} //}}}
|
|
393
366
|
|
|
394
367
|
// Generic Functions {{{
|
data/cockpit/model.html
CHANGED
|
@@ -58,6 +58,8 @@
|
|
|
58
58
|
<script type="text/javascript" src="js/edit.js"></script>
|
|
59
59
|
<link rel="stylesheet" href="css/ui.css" type="text/css"/>
|
|
60
60
|
<link rel="stylesheet" href="css/model.css" type="text/css"/>
|
|
61
|
+
<link rel="stylesheet" href="css/resources-label.css" type="text/css"/>
|
|
62
|
+
<link rel="stylesheet" href="css/resources-svg.css" type="text/css" data-include-export="true"/>
|
|
61
63
|
<link rel="stylesheet" href="/global_ui/uicpee.css" type="text/css"/>
|
|
62
64
|
<style>
|
|
63
65
|
/* has to be fucking inline, because firefox and chrome disagree how to handle filter urls */
|
|
@@ -12,10 +12,14 @@
|
|
|
12
12
|
</dataelements>
|
|
13
13
|
<endpoints>
|
|
14
14
|
<bookAir>http://gruppe.wst.univie.ac.at/~mangler/services/airline.php</bookAir>
|
|
15
|
+
<user>https-post://cpee.org/services/timeout-user.php</user>
|
|
16
|
+
<auto>https-post://cpee.org/services/timeout-auto.php</auto>
|
|
15
17
|
<timeout>https://cpee.org/services/timeout.php</timeout>
|
|
16
18
|
<bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
|
|
17
19
|
<subprocess>https://cpee.org/flow/start/url/</subprocess>
|
|
18
20
|
<approve>http://gruppe.wst.univie.ac.at/~mangler/services/approval.php</approve>
|
|
21
|
+
<send>https-post://cpee.org/ing/correlators/message/send/</send>
|
|
22
|
+
<receive>https-get://cpee.org/ing/correlators/message/receive/</receive>
|
|
19
23
|
</endpoints>
|
|
20
24
|
<attributes>
|
|
21
25
|
<theme>extended</theme>
|
|
@@ -25,10 +29,13 @@
|
|
|
25
29
|
<modeltype>CPEE</modeltype>
|
|
26
30
|
<design_stage>development</design_stage>
|
|
27
31
|
<guarded>none</guarded>
|
|
28
|
-
<design_dir>
|
|
32
|
+
<design_dir>Experiments.dir/Twin Engine.dir</design_dir>
|
|
29
33
|
<guarded_id/>
|
|
30
34
|
<model_uuid>a1cbb855-90e3-4d8c-b44b-d3ba7bff9f4e</model_uuid>
|
|
31
35
|
<model_version/>
|
|
36
|
+
<replay>https://cpee.org/replay/</replay>
|
|
37
|
+
<replay_target>https://cpee.org/replay-data/coopis/1274c1de-286e-4d73-9375-30b363d280fa.xes.yaml</replay_target>
|
|
38
|
+
<replay_instantiate>https://cpee.org/flow/start/url/</replay_instantiate>
|
|
32
39
|
</attributes>
|
|
33
40
|
<description>
|
|
34
41
|
<description xmlns="http://cpee.org/ns/description/1.0">
|
|
@@ -3,13 +3,7 @@
|
|
|
3
3
|
<executionhandler>ruby</executionhandler>
|
|
4
4
|
<dataelements/>
|
|
5
5
|
<endpoints>
|
|
6
|
-
<timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
|
|
7
|
-
<subprocess>https-post://cpee.org/flow/start/url/</subprocess>
|
|
8
6
|
<worklist>https-post://cpee.org/worklist/server/</worklist>
|
|
9
|
-
<send>https-post://cpee.org/ing/correlators/message/send/</send>
|
|
10
|
-
<receive>https-get://cpee.org/ing/correlators/message/receive/</receive>
|
|
11
|
-
<user>https-post://cpee.org/services/timeout-user.php</user>
|
|
12
|
-
<auto>https-post://cpee.org/services/timeout-auto.php</auto>
|
|
13
7
|
</endpoints>
|
|
14
8
|
<attributes>
|
|
15
9
|
<info>Worklist</info>
|
|
@@ -28,9 +22,10 @@
|
|
|
28
22
|
<label>OK OR NOT OK</label>
|
|
29
23
|
<arguments>
|
|
30
24
|
<orgmodel>https://cpee.org/~demo/orgviz/organisation_informatik.xml</orgmodel>
|
|
31
|
-
<domain>VirtualBusiness1</domain>
|
|
32
25
|
<form>https://cpee.org/~demo/form/form-f.html</form>
|
|
33
26
|
<role>Assistant</role>
|
|
27
|
+
<priority>42</priority>
|
|
28
|
+
<restrictions/>
|
|
34
29
|
<data>
|
|
35
30
|
<schaden>10000</schaden>
|
|
36
31
|
<text>destroyed</text>
|
|
@@ -44,11 +39,15 @@
|
|
|
44
39
|
<rescue output="result"/>
|
|
45
40
|
</code>
|
|
46
41
|
<annotations>
|
|
42
|
+
<_generic/>
|
|
47
43
|
<_timing>
|
|
48
44
|
<_timing_weight/>
|
|
49
45
|
<_timing_avg/>
|
|
50
46
|
<explanations/>
|
|
51
47
|
</_timing>
|
|
48
|
+
<_shifting>
|
|
49
|
+
<_shifting_type>Duration</_shifting_type>
|
|
50
|
+
</_shifting>
|
|
52
51
|
<_context_data_analysis>
|
|
53
52
|
<probes/>
|
|
54
53
|
<ips/>
|
|
@@ -98,9 +98,9 @@
|
|
|
98
98
|
</element>
|
|
99
99
|
<element name="extractor_type" rngui:label="Extractor Type">
|
|
100
100
|
<choice>
|
|
101
|
-
<value
|
|
102
|
-
<value
|
|
103
|
-
<value
|
|
101
|
+
<value rngui:label='Intrinsic'>intrinsic</value>
|
|
102
|
+
<value rngui:label='Extrinsic'>extrinsic</value>
|
|
103
|
+
<value rngui:label='Separate'>separate</value>
|
|
104
104
|
</choice>
|
|
105
105
|
</element>
|
|
106
106
|
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For intrinsic & extrinsic data'>
|
|
@@ -122,9 +122,9 @@
|
|
|
122
122
|
</element>
|
|
123
123
|
<element name="extractor_type" rngui:label="Extractor Type">
|
|
124
124
|
<choice>
|
|
125
|
-
<value
|
|
126
|
-
<value
|
|
127
|
-
<value
|
|
125
|
+
<value rngui:label='Intrinsic'>intrinsic</value>
|
|
126
|
+
<value rngui:label='Extrinsic'>extrinsic</value>
|
|
127
|
+
<value rngui:label='Separate'>separate</value>
|
|
128
128
|
</choice>
|
|
129
129
|
</element>
|
|
130
130
|
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For intrinsic & extrinsic data'>
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
</attribute>
|
|
5
5
|
<attribute name="cancel" rngui:label="Cancel" rngui:default="last" rngui:hint="Set 'Wait' to 1 for standard Event-based Gateway.">
|
|
6
6
|
<choice>
|
|
7
|
-
<value
|
|
8
|
-
<value
|
|
7
|
+
<value rngui:label='After Last Task in Branch'>last</value>
|
|
8
|
+
<value rngui:label='After First Task in Branch (Event-Based Gateway)'>first</value>
|
|
9
9
|
</choice>
|
|
10
10
|
</attribute>
|
|
11
11
|
<element rngui:ignore="true" name="parallel_branch">
|
|
@@ -29,9 +29,9 @@
|
|
|
29
29
|
</element>
|
|
30
30
|
<element name="extractor_type" rngui:label="Extractor Type">
|
|
31
31
|
<choice>
|
|
32
|
-
<value
|
|
33
|
-
<value
|
|
34
|
-
<value
|
|
32
|
+
<value rngui:label='Intrinsic'>intrinsic</value>
|
|
33
|
+
<value rngui:label='Extrinsic'>extrinsic</value>
|
|
34
|
+
<value rngui:label='Separate'>separate</value>
|
|
35
35
|
</choice>
|
|
36
36
|
</element>
|
|
37
37
|
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For intrinsic & extrinsic data'>
|
|
@@ -64,7 +64,6 @@ function WFAdaptorManifestation(adaptor) {
|
|
|
64
64
|
this.update_details = function(svgid){
|
|
65
65
|
var tab = $('#dat_details');
|
|
66
66
|
var node = self.adaptor.description.get_node_by_svg_id(svgid).get(0);
|
|
67
|
-
tab.empty();
|
|
68
67
|
if (self.adaptor.description.elements[$(node).attr('svg-subtype')]) {
|
|
69
68
|
save['details_target'] = { 'svgid': svgid, 'model': self.adaptor.description };
|
|
70
69
|
var rng = self.adaptor.description.elements[$(node).attr('svg-subtype')].clone();
|
|
@@ -75,13 +74,16 @@ function WFAdaptorManifestation(adaptor) {
|
|
|
75
74
|
if (save['endpoints_list'][$(node).attr('endpoint')] && (!save['endpoints_list'][$(node).attr('endpoint')].startsWith('http') || save['endpoints_list'][$(node).attr('endpoint')].match(/^https?-/))) {
|
|
76
75
|
$(rng).find(' > element[name="parameters"] > element[name="method"]').remove();
|
|
77
76
|
}
|
|
78
|
-
save['details'] = new RelaxNGui(rng,tab,self.adaptor.description.context_eval,true);
|
|
79
77
|
var nn = $X($(node).serializeXML());
|
|
80
78
|
nn.removeAttr('svg-id');
|
|
81
79
|
nn.removeAttr('svg-type');
|
|
82
80
|
nn.removeAttr('svg-subtype');
|
|
83
81
|
nn.removeAttr('svg-label');
|
|
82
|
+
|
|
83
|
+
tab.empty();
|
|
84
|
+
save['details'] = new RelaxNGui(rng,tab,self.adaptor.description.context_eval,true);
|
|
84
85
|
save['details'].content(nn);
|
|
86
|
+
|
|
85
87
|
format_visual_forms();
|
|
86
88
|
}
|
|
87
89
|
}; //}}}
|
|
@@ -201,8 +203,17 @@ function WFAdaptorManifestation(adaptor) {
|
|
|
201
203
|
$(nodes).each(function(key,str) {
|
|
202
204
|
nodes[key] = $X(str);
|
|
203
205
|
});
|
|
206
|
+
let svgids = [];
|
|
204
207
|
$(nodes).each(function(key,node){
|
|
205
|
-
|
|
208
|
+
svgids.push($(node).attr('svg-id'));
|
|
209
|
+
});
|
|
210
|
+
svgids.sort((a,b) => {
|
|
211
|
+
if (a > b) { return -1; }
|
|
212
|
+
else if (a < b) { return 1; }
|
|
213
|
+
else { return 0; }
|
|
214
|
+
});
|
|
215
|
+
svgids.forEach(svgid => {
|
|
216
|
+
var target = self.adaptor.description.get_node_by_svg_id(svgid);
|
|
206
217
|
del_ui_pos(target)
|
|
207
218
|
self.adaptor.description.remove(null,target);
|
|
208
219
|
localStorage.removeItem('marked');
|
|
@@ -1223,28 +1234,33 @@ function WFAdaptorManifestation(adaptor) {
|
|
|
1223
1234
|
return 'vertical';
|
|
1224
1235
|
},
|
|
1225
1236
|
'resolve_symbol': function(node) {
|
|
1237
|
+
let alist = []
|
|
1226
1238
|
let plist = []
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1240
|
-
|
|
1241
|
-
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1239
|
+
|
|
1240
|
+
var regassi = /data\.([a-zA-Z_]+)\s*(=[^=]|\+\=|\-\=|\*\=|\/\=|<<|>>)/g; // we do not have to check for >/< version of stuff as only conditions are in attributes, and conditions can not contain assignments
|
|
1241
|
+
var reg_not_assi = /data\.([a-zA-Z_]+)\s*/g;
|
|
1242
|
+
$ ('call > parameters > arguments > *, call > code > *, loop[condition], alternative[condition]',node).each(function(i,n) {
|
|
1243
|
+
let item;
|
|
1244
|
+
if (n.hasAttribute('condition')) {
|
|
1245
|
+
item = n.getAttribute('condition');
|
|
1246
|
+
} else {
|
|
1247
|
+
item = n.textContent;
|
|
1248
|
+
}
|
|
1249
|
+
if (n.parentNode.nodeName == 'arguments' && item.charAt(0) != '!' ) { return }
|
|
1250
|
+
|
|
1251
|
+
let indices = [];
|
|
1252
|
+
|
|
1253
|
+
for (const match of item.matchAll(regassi)) {
|
|
1254
|
+
indices.push(match.index);
|
|
1255
|
+
alist.push(match[1]);
|
|
1256
|
+
}
|
|
1257
|
+
for (const match of item.matchAll(reg_not_assi)) {
|
|
1258
|
+
const arg1 = match[1];
|
|
1259
|
+
if (indices.includes(match.index)) { continue; }
|
|
1260
|
+
if (!alist.includes(arg1)) { plist.push(arg1); }
|
|
1245
1261
|
}
|
|
1246
1262
|
})
|
|
1247
|
-
if (
|
|
1263
|
+
if (plist.length > 0) { return 'start_event'; }
|
|
1248
1264
|
},
|
|
1249
1265
|
'closing_symbol': 'end',
|
|
1250
1266
|
'col_shift': function(node) {
|
|
@@ -98,9 +98,9 @@
|
|
|
98
98
|
</element>
|
|
99
99
|
<element name="extractor_type" rngui:label="Extractor Type">
|
|
100
100
|
<choice>
|
|
101
|
-
<value
|
|
102
|
-
<value
|
|
103
|
-
<value
|
|
101
|
+
<value rngui:label='Intrinsic'>intrinsic</value>
|
|
102
|
+
<value rngui:label='Extrinsic'>extrinsic</value>
|
|
103
|
+
<value rngui:label='Separate'>separate</value>
|
|
104
104
|
</choice>
|
|
105
105
|
</element>
|
|
106
106
|
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For intrinsic & extrinsic data'>
|
|
@@ -122,9 +122,9 @@
|
|
|
122
122
|
</element>
|
|
123
123
|
<element name="extractor_type" rngui:label="Extractor Type">
|
|
124
124
|
<choice>
|
|
125
|
-
<value
|
|
126
|
-
<value
|
|
127
|
-
<value
|
|
125
|
+
<value rngui:label='Intrinsic'>intrinsic</value>
|
|
126
|
+
<value rngui:label='Extrinsic'>extrinsic</value>
|
|
127
|
+
<value rngui:label='Separate'>separate</value>
|
|
128
128
|
</choice>
|
|
129
129
|
</element>
|
|
130
130
|
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For intrinsic & extrinsic data'>
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
</attribute>
|
|
5
5
|
<attribute name="cancel" rngui:label="Cancel" rngui:default="last" rngui:hint="Set 'Wait' to 1 for standard Event-based Gateway.">
|
|
6
6
|
<choice>
|
|
7
|
-
<value
|
|
8
|
-
<value
|
|
7
|
+
<value rngui:label='After Last Task in Branch'>last</value>
|
|
8
|
+
<value rngui:label='After First Task in Branch (Event-Based Gateway)'>first</value>
|
|
9
9
|
</choice>
|
|
10
10
|
</attribute>
|
|
11
11
|
<element rngui:ignore="true" name="parallel_branch">
|
|
@@ -29,9 +29,9 @@
|
|
|
29
29
|
</element>
|
|
30
30
|
<element name="extractor_type" rngui:label="Extractor Type">
|
|
31
31
|
<choice>
|
|
32
|
-
<value
|
|
33
|
-
<value
|
|
34
|
-
<value
|
|
32
|
+
<value rngui:label='Intrinsic'>intrinsic</value>
|
|
33
|
+
<value rngui:label='Extrinsic'>extrinsic</value>
|
|
34
|
+
<value rngui:label='Separate'>separate</value>
|
|
35
35
|
</choice>
|
|
36
36
|
</element>
|
|
37
37
|
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For intrinsic & extrinsic data'>
|
|
@@ -64,7 +64,6 @@ function WFAdaptorManifestation(adaptor) {
|
|
|
64
64
|
this.update_details = function(svgid){
|
|
65
65
|
var tab = $('#dat_details');
|
|
66
66
|
var node = self.adaptor.description.get_node_by_svg_id(svgid).get(0);
|
|
67
|
-
tab.empty();
|
|
68
67
|
if (self.adaptor.description.elements[$(node).attr('svg-subtype')]) {
|
|
69
68
|
save['details_target'] = { 'svgid': svgid, 'model': self.adaptor.description };
|
|
70
69
|
var rng = self.adaptor.description.elements[$(node).attr('svg-subtype')].clone();
|
|
@@ -75,13 +74,16 @@ function WFAdaptorManifestation(adaptor) {
|
|
|
75
74
|
if (save['endpoints_list'][$(node).attr('endpoint')] && (!save['endpoints_list'][$(node).attr('endpoint')].startsWith('http') || save['endpoints_list'][$(node).attr('endpoint')].match(/^https?-/))) {
|
|
76
75
|
$(rng).find(' > element[name="parameters"] > element[name="method"]').remove();
|
|
77
76
|
}
|
|
78
|
-
save['details'] = new RelaxNGui(rng,tab,self.adaptor.description.context_eval,true);
|
|
79
77
|
var nn = $X($(node).serializeXML());
|
|
80
78
|
nn.removeAttr('svg-id');
|
|
81
79
|
nn.removeAttr('svg-type');
|
|
82
80
|
nn.removeAttr('svg-subtype');
|
|
83
81
|
nn.removeAttr('svg-label');
|
|
82
|
+
|
|
83
|
+
tab.empty();
|
|
84
|
+
save['details'] = new RelaxNGui(rng,tab,self.adaptor.description.context_eval,true);
|
|
84
85
|
save['details'].content(nn);
|
|
86
|
+
|
|
85
87
|
format_visual_forms();
|
|
86
88
|
}
|
|
87
89
|
}; //}}}
|
|
@@ -201,8 +203,17 @@ function WFAdaptorManifestation(adaptor) {
|
|
|
201
203
|
$(nodes).each(function(key,str) {
|
|
202
204
|
nodes[key] = $X(str);
|
|
203
205
|
});
|
|
206
|
+
let svgids = [];
|
|
204
207
|
$(nodes).each(function(key,node){
|
|
205
|
-
|
|
208
|
+
svgids.push($(node).attr('svg-id'));
|
|
209
|
+
});
|
|
210
|
+
svgids.sort((a,b) => {
|
|
211
|
+
if (a > b) { return -1; }
|
|
212
|
+
else if (a < b) { return 1; }
|
|
213
|
+
else { return 0; }
|
|
214
|
+
});
|
|
215
|
+
svgids.forEach(svgid => {
|
|
216
|
+
var target = self.adaptor.description.get_node_by_svg_id(svgid);
|
|
206
217
|
del_ui_pos(target)
|
|
207
218
|
self.adaptor.description.remove(null,target);
|
|
208
219
|
localStorage.removeItem('marked');
|
|
@@ -375,10 +386,18 @@ function WFAdaptorManifestation(adaptor) {
|
|
|
375
386
|
},
|
|
376
387
|
'info': function(node){ return { 'element-endpoint': $(node).attr('endpoint') }; },
|
|
377
388
|
'resolve_symbol': function(node) {
|
|
378
|
-
if($('>
|
|
379
|
-
|
|
389
|
+
if ($('> annotations > _context_data_analysis > probes > probe', node).length > 0) {
|
|
390
|
+
if ($('> code', node).length > 0) {
|
|
391
|
+
return 'callmanipulate_sensor';
|
|
392
|
+
} else {
|
|
393
|
+
return 'call_sensor';
|
|
394
|
+
}
|
|
380
395
|
} else {
|
|
381
|
-
|
|
396
|
+
if ($('> code', node).length > 0) {
|
|
397
|
+
return 'callmanipulate';
|
|
398
|
+
} else {
|
|
399
|
+
return 'call';
|
|
400
|
+
}
|
|
382
401
|
}
|
|
383
402
|
},
|
|
384
403
|
'svg': self.adaptor.theme_dir + 'symbols/call.svg'
|
|
@@ -972,7 +991,7 @@ function WFAdaptorManifestation(adaptor) {
|
|
|
972
991
|
ret.push({ column: 'Average', value: avg + '%' });
|
|
973
992
|
}
|
|
974
993
|
return ret;
|
|
975
|
-
|
|
994
|
+
,
|
|
976
995
|
'svg': self.adaptor.theme_dir + 'symbols/closed_loop.svg'
|
|
977
996
|
},//}}}
|
|
978
997
|
'description': self.adaptor.theme_dir + 'rngs/closed_loop.rng',
|
|
@@ -1576,13 +1595,42 @@ function WFAdaptorManifestation(adaptor) {
|
|
|
1576
1595
|
'expansion': function(node) {
|
|
1577
1596
|
return 'vertical';
|
|
1578
1597
|
},
|
|
1598
|
+
'resolve_symbol': function(node) {
|
|
1599
|
+
let alist = []
|
|
1600
|
+
let plist = []
|
|
1601
|
+
|
|
1602
|
+
var regassi = /data\.([a-zA-Z_]+)\s*(=[^=]|\+\=|\-\=|\*\=|\/\=|<<|>>)/g; // we do not have to check for >/< version of stuff as only conditions are in attributes, and conditions can not contain assignments
|
|
1603
|
+
var reg_not_assi = /data\.([a-zA-Z_]+)\s*/g;
|
|
1604
|
+
$ ('call > parameters > arguments > *, call > code > *, loop[condition], alternative[condition]',node).each(function(i,n) {
|
|
1605
|
+
let item;
|
|
1606
|
+
if (n.hasAttribute('condition')) {
|
|
1607
|
+
item = n.getAttribute('condition');
|
|
1608
|
+
} else {
|
|
1609
|
+
item = n.textContent;
|
|
1610
|
+
}
|
|
1611
|
+
if (n.parentNode.nodeName == 'arguments' && item.charAt(0) != '!' ) { return }
|
|
1612
|
+
|
|
1613
|
+
let indices = [];
|
|
1614
|
+
|
|
1615
|
+
for (const match of item.matchAll(regassi)) {
|
|
1616
|
+
indices.push(match.index);
|
|
1617
|
+
alist.push(match[1]);
|
|
1618
|
+
}
|
|
1619
|
+
for (const match of item.matchAll(reg_not_assi)) {
|
|
1620
|
+
const arg1 = match[1];
|
|
1621
|
+
if (indices.includes(match.index)) { continue; }
|
|
1622
|
+
if (!alist.includes(arg1)) { plist.push(arg1); }
|
|
1623
|
+
}
|
|
1624
|
+
})
|
|
1625
|
+
if (plist.length > 0) { return 'start_event'; }
|
|
1626
|
+
},
|
|
1579
1627
|
'closing_symbol': 'end',
|
|
1580
1628
|
'col_shift': function(node) {
|
|
1581
1629
|
return true;
|
|
1582
1630
|
},
|
|
1583
1631
|
'svg': self.adaptor.theme_dir + 'symbols/start.svg'
|
|
1584
1632
|
},//}}}
|
|
1585
|
-
'description':
|
|
1633
|
+
'description': self.adaptor.theme_dir + 'rngs/start.rng',
|
|
1586
1634
|
'permissible_children': function(node,mode) { //{{{
|
|
1587
1635
|
var func = null;
|
|
1588
1636
|
if (mode == 'into') { func = self.adaptor.description.insert_first_into }
|
|
@@ -1654,13 +1702,31 @@ function WFAdaptorManifestation(adaptor) {
|
|
|
1654
1702
|
// Abstract Elements
|
|
1655
1703
|
// * they may only have an illustrator (or other parts)
|
|
1656
1704
|
// * they HAVE TO have a parent
|
|
1705
|
+
this.elements.start_event = { /*{{{*/
|
|
1706
|
+
'parent': 'start',
|
|
1707
|
+
'illustrator': {//{{{
|
|
1708
|
+
'svg': self.adaptor.theme_dir + 'symbols/start_event.svg'
|
|
1709
|
+
}//}}}
|
|
1710
|
+
}; /*}}}*/
|
|
1711
|
+
this.elements.call_sensor = { /*{{{*/
|
|
1712
|
+
'parent': 'call',
|
|
1713
|
+
'illustrator': {//{{{
|
|
1714
|
+
'svg': self.adaptor.theme_dir + 'symbols/call_sensor.svg'
|
|
1715
|
+
}//}}}
|
|
1716
|
+
}; /*}}}*/
|
|
1657
1717
|
this.elements.callmanipulate = { /*{{{*/
|
|
1658
1718
|
'parent': 'call',
|
|
1659
1719
|
'description': self.adaptor.theme_dir + 'rngs/callmanipulate.rng',
|
|
1660
1720
|
'illustrator': {//{{{
|
|
1661
|
-
'info': function(node){ return { 'element-endpoint': $(node).attr('endpoint') }; },
|
|
1662
1721
|
'svg': self.adaptor.theme_dir + 'symbols/callmanipulate.svg'
|
|
1663
|
-
}
|
|
1722
|
+
}//}}}
|
|
1723
|
+
}; /*}}}*/
|
|
1724
|
+
this.elements.callmanipulate_sensor = { /*{{{*/
|
|
1725
|
+
'parent': 'call',
|
|
1726
|
+
'description': self.adaptor.theme_dir + 'rngs/callmanipulate.rng',
|
|
1727
|
+
'illustrator': {//{{{
|
|
1728
|
+
'svg': self.adaptor.theme_dir + 'symbols/callmanipulate_sensor.svg'
|
|
1729
|
+
}//}}}
|
|
1664
1730
|
}; /*}}}*/
|
|
1665
1731
|
this.elements.loop_head = { /*{{{*/
|
|
1666
1732
|
'parent': 'loop',
|
|
@@ -98,9 +98,9 @@
|
|
|
98
98
|
</element>
|
|
99
99
|
<element name="extractor_type" rngui:label="Extractor Type">
|
|
100
100
|
<choice>
|
|
101
|
-
<value
|
|
102
|
-
<value
|
|
103
|
-
<value
|
|
101
|
+
<value rngui:label='Intrinsic'>intrinsic</value>
|
|
102
|
+
<value rngui:label='Extrinsic'>extrinsic</value>
|
|
103
|
+
<value rngui:label='Separate'>separate</value>
|
|
104
104
|
</choice>
|
|
105
105
|
</element>
|
|
106
106
|
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For intrinsic & extrinsic data'>
|
|
@@ -122,9 +122,9 @@
|
|
|
122
122
|
</element>
|
|
123
123
|
<element name="extractor_type" rngui:label="Extractor Type">
|
|
124
124
|
<choice>
|
|
125
|
-
<value
|
|
126
|
-
<value
|
|
127
|
-
<value
|
|
125
|
+
<value rngui:label='Intrinsic'>intrinsic</value>
|
|
126
|
+
<value rngui:label='Extrinsic'>extrinsic</value>
|
|
127
|
+
<value rngui:label='Separate'>separate</value>
|
|
128
128
|
</choice>
|
|
129
129
|
</element>
|
|
130
130
|
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For intrinsic & extrinsic data'>
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
</attribute>
|
|
5
5
|
<attribute name="cancel" rngui:label="Cancel" rngui:default="last" rngui:hint="Set 'Wait' to 1 for standard Event-based Gateway.">
|
|
6
6
|
<choice>
|
|
7
|
-
<value
|
|
8
|
-
<value
|
|
7
|
+
<value rngui:label='After Last Task in Branch'>last</value>
|
|
8
|
+
<value rngui:label='After First Task in Branch (Event-Based Gateway)'>first</value>
|
|
9
9
|
</choice>
|
|
10
10
|
</attribute>
|
|
11
11
|
<element rngui:ignore="true" name="parallel_branch">
|
|
@@ -29,9 +29,9 @@
|
|
|
29
29
|
</element>
|
|
30
30
|
<element name="extractor_type" rngui:label="Extractor Type">
|
|
31
31
|
<choice>
|
|
32
|
-
<value
|
|
33
|
-
<value
|
|
34
|
-
<value
|
|
32
|
+
<value rngui:label='Intrinsic'>intrinsic</value>
|
|
33
|
+
<value rngui:label='Extrinsic'>extrinsic</value>
|
|
34
|
+
<value rngui:label='Separate'>separate</value>
|
|
35
35
|
</choice>
|
|
36
36
|
</element>
|
|
37
37
|
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For intrinsic & extrinsic data'>
|