cpee 1.3.119 → 1.3.120
Sign up to get free protection for your applications and to get access to all the features.
- data/cockpit/contrib/graph_example.svg +1166 -0
- data/cockpit/contrib/legend.svg +817 -0
- data/cockpit/contrib/tree_example.svg +788 -0
- data/cockpit/css/ui.css +41 -14
- data/cockpit/index.html +82 -35
- data/cockpit/js/instance.js +38 -28
- data/cockpit/js/ui.js +18 -1
- data/cockpit/js/wfadaptor.cpee.js +3 -20
- data/cockpit/lib/contextmenu.css +8 -2
- data/cockpit/lib/jquery.cookie.js +117 -0
- data/cockpit/lib/wfadaptor.css +4 -0
- data/cockpit/testsets/Concurrent.xml +2 -2
- data/cockpit/testsets/Coopis Testset.xml +39 -37
- data/cockpit/testsets/Endpoints and Data Manipulation.xml +14 -12
- data/cockpit/testsets/ICSOC Testset.xml +61 -59
- data/cockpit/testsets/Linear.xml +31 -29
- data/cockpit/testsets/Mangler 1.xml +57 -55
- data/cockpit/testsets/Mangler 2.xml +60 -58
- data/cockpit/testsets/RESCUE - Book Movie - Local.xml +68 -66
- data/cockpit/testsets/RESCUE - Book Movie.xml +68 -66
- data/cockpit/testsets/RESCUE - Loop-Parallel Injection.xml +61 -59
- data/cockpit/testsets/SOPROMO Test Sonification.xml +38 -36
- data/cockpit/testsets/Syncing P34 1.xml +31 -29
- data/cockpit/testsets/Syncing P34 2.xml +31 -29
- data/cockpit/testsets/Syncing P34 3.xml +31 -29
- data/cockpit/testsets/Syncing P34.xml +31 -29
- data/cockpit/testsets/TEST - Bad Loop.xml +129 -127
- data/cockpit/testsets/TEST - Wrong Positions.xml +142 -140
- data/cpee.gemspec +1 -1
- data/server/handlerwrappers/default.rb +13 -0
- data/server/resources/properties.init +3 -1
- data/server/resources/transformation_dslx.xsl +3 -0
- metadata +6 -6
- data/server/instances/1/notifications/9a9f296b8446be3ee15a99fbb94543dd/consumer-secret +0 -1
- data/server/instances/1/notifications/9a9f296b8446be3ee15a99fbb94543dd/producer-secret +0 -1
- data/server/instances/1/notifications/9a9f296b8446be3ee15a99fbb94543dd/subscription.xml +0 -27
- data/server/instances/1/properties.xml +0 -41
data/cockpit/lib/contextmenu.css
CHANGED
@@ -64,9 +64,15 @@ tr.contextmenuitem > td{
|
|
64
64
|
tr.contextmenuitem > .contextmenuicon{
|
65
65
|
margin-left: 0.7em;
|
66
66
|
padding-right: 0em;
|
67
|
-
vertical-align: bottom;
|
68
67
|
}
|
69
|
-
tr.contextmenuitem > .contextmenuicon
|
68
|
+
tr.contextmenuitem > .contextmenuicon div {
|
70
69
|
height: 1.5em;
|
71
70
|
width: 1.5em;
|
71
|
+
vertical-align:bottom;
|
72
72
|
}
|
73
|
+
tr.contextmenuitem > .contextmenuicon div svg {
|
74
|
+
height: 1.5em;
|
75
|
+
width: 1.5em;
|
76
|
+
vertical-align:bottom;
|
77
|
+
}
|
78
|
+
|
@@ -0,0 +1,117 @@
|
|
1
|
+
/*!
|
2
|
+
* jQuery Cookie Plugin v1.4.0
|
3
|
+
* https://github.com/carhartl/jquery-cookie
|
4
|
+
*
|
5
|
+
* Copyright 2013 Klaus Hartl
|
6
|
+
* Released under the MIT license
|
7
|
+
*/
|
8
|
+
(function (factory) {
|
9
|
+
if (typeof define === 'function' && define.amd) {
|
10
|
+
// AMD. Register as anonymous module.
|
11
|
+
define(['jquery'], factory);
|
12
|
+
} else {
|
13
|
+
// Browser globals.
|
14
|
+
factory(jQuery);
|
15
|
+
}
|
16
|
+
}(function ($) {
|
17
|
+
|
18
|
+
var pluses = /\+/g;
|
19
|
+
|
20
|
+
function encode(s) {
|
21
|
+
return config.raw ? s : encodeURIComponent(s);
|
22
|
+
}
|
23
|
+
|
24
|
+
function decode(s) {
|
25
|
+
return config.raw ? s : decodeURIComponent(s);
|
26
|
+
}
|
27
|
+
|
28
|
+
function stringifyCookieValue(value) {
|
29
|
+
return encode(config.json ? JSON.stringify(value) : String(value));
|
30
|
+
}
|
31
|
+
|
32
|
+
function parseCookieValue(s) {
|
33
|
+
if (s.indexOf('"') === 0) {
|
34
|
+
// This is a quoted cookie as according to RFC2068, unescape...
|
35
|
+
s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
|
36
|
+
}
|
37
|
+
|
38
|
+
try {
|
39
|
+
// Replace server-side written pluses with spaces.
|
40
|
+
// If we can't decode the cookie, ignore it, it's unusable.
|
41
|
+
s = decodeURIComponent(s.replace(pluses, ' '));
|
42
|
+
} catch(e) {
|
43
|
+
return;
|
44
|
+
}
|
45
|
+
|
46
|
+
try {
|
47
|
+
// If we can't parse the cookie, ignore it, it's unusable.
|
48
|
+
return config.json ? JSON.parse(s) : s;
|
49
|
+
} catch(e) {}
|
50
|
+
}
|
51
|
+
|
52
|
+
function read(s, converter) {
|
53
|
+
var value = config.raw ? s : parseCookieValue(s);
|
54
|
+
return $.isFunction(converter) ? converter(value) : value;
|
55
|
+
}
|
56
|
+
|
57
|
+
var config = $.cookie = function (key, value, options) {
|
58
|
+
|
59
|
+
// Write
|
60
|
+
if (value !== undefined && !$.isFunction(value)) {
|
61
|
+
options = $.extend({}, config.defaults, options);
|
62
|
+
|
63
|
+
if (typeof options.expires === 'number') {
|
64
|
+
var days = options.expires, t = options.expires = new Date();
|
65
|
+
t.setDate(t.getDate() + days);
|
66
|
+
}
|
67
|
+
|
68
|
+
return (document.cookie = [
|
69
|
+
encode(key), '=', stringifyCookieValue(value),
|
70
|
+
options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
|
71
|
+
options.path ? '; path=' + options.path : '',
|
72
|
+
options.domain ? '; domain=' + options.domain : '',
|
73
|
+
options.secure ? '; secure' : ''
|
74
|
+
].join(''));
|
75
|
+
}
|
76
|
+
|
77
|
+
// Read
|
78
|
+
|
79
|
+
var result = key ? undefined : {};
|
80
|
+
|
81
|
+
// To prevent the for loop in the first place assign an empty array
|
82
|
+
// in case there are no cookies at all. Also prevents odd result when
|
83
|
+
// calling $.cookie().
|
84
|
+
var cookies = document.cookie ? document.cookie.split('; ') : [];
|
85
|
+
|
86
|
+
for (var i = 0, l = cookies.length; i < l; i++) {
|
87
|
+
var parts = cookies[i].split('=');
|
88
|
+
var name = decode(parts.shift());
|
89
|
+
var cookie = parts.join('=');
|
90
|
+
|
91
|
+
if (key && key === name) {
|
92
|
+
// If second argument (value) is a function it's a converter...
|
93
|
+
result = read(cookie, value);
|
94
|
+
break;
|
95
|
+
}
|
96
|
+
|
97
|
+
// Prevent storing a cookie that we couldn't decode.
|
98
|
+
if (!key && (cookie = read(cookie)) !== undefined) {
|
99
|
+
result[name] = cookie;
|
100
|
+
}
|
101
|
+
}
|
102
|
+
|
103
|
+
return result;
|
104
|
+
};
|
105
|
+
|
106
|
+
config.defaults = {};
|
107
|
+
|
108
|
+
$.removeCookie = function (key, options) {
|
109
|
+
if ($.cookie(key) !== undefined) {
|
110
|
+
// Must not alter options, thus extending a fresh object...
|
111
|
+
$.cookie(key, '', $.extend({}, options, { expires: -1 }));
|
112
|
+
return true;
|
113
|
+
}
|
114
|
+
return false;
|
115
|
+
};
|
116
|
+
|
117
|
+
}));
|
data/cockpit/lib/wfadaptor.css
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
<endpoints>
|
11
11
|
<bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
|
12
12
|
</endpoints>
|
13
|
-
<
|
13
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
14
14
|
<parallel>
|
15
15
|
<loop pre_test="data.persons > 0">
|
16
16
|
<parallel_branch pass="data.persons" local="p">
|
@@ -28,7 +28,7 @@
|
|
28
28
|
<manipulate id="a3"> data.persons -= 1</manipulate>
|
29
29
|
</loop>
|
30
30
|
</parallel>
|
31
|
-
</
|
31
|
+
</description>
|
32
32
|
<transformation>
|
33
33
|
<description type='copy'/>
|
34
34
|
<dataelements type='rest'/>
|
@@ -16,50 +16,52 @@
|
|
16
16
|
<bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
|
17
17
|
<approve>http://gruppe.wst.univie.ac.at/~mangler/services/approval.php</approve>
|
18
18
|
</endpoints>
|
19
|
-
<description
|
20
|
-
<
|
21
|
-
<
|
22
|
-
<method>post</method>
|
19
|
+
<description>
|
20
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
21
|
+
<call id="a1" endpoint="bookAir">
|
23
22
|
<parameters>
|
24
|
-
<
|
25
|
-
<
|
26
|
-
|
23
|
+
<method>post</method>
|
24
|
+
<parameters>
|
25
|
+
<from>data.from</from>
|
26
|
+
<to>data.to</to>
|
27
|
+
<persons>data.persons</persons>
|
28
|
+
</parameters>
|
27
29
|
</parameters>
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
30
|
+
<manipulate output="result"> data.airline = result.value('id')
|
31
|
+
data.costs += result.value('costs').to_f
|
32
|
+
status.update 1, 'Hotel'</manipulate>
|
33
|
+
</call>
|
34
|
+
<parallel>
|
35
|
+
<loop pre_test="data.persons > 0">
|
36
|
+
<parallel_branch pass="data.persons" local="p">
|
37
|
+
<call id="a2" endpoint="bookHotel">
|
38
|
+
<parameters>
|
39
|
+
<method>post</method>
|
40
|
+
<parameters>
|
41
|
+
<to>data.to</to>
|
42
|
+
</parameters>
|
43
|
+
</parameters>
|
44
|
+
<manipulate output="result"> data.hotels << result.value('id')
|
45
|
+
data.costs += result.value('costs').to_f</manipulate>
|
46
|
+
</call>
|
47
|
+
</parallel_branch>
|
48
|
+
<manipulate id="a3"> data.persons -= 1</manipulate>
|
49
|
+
</loop>
|
50
|
+
</parallel>
|
51
|
+
<choose>
|
52
|
+
<alternative condition="data.costs > 700">
|
53
|
+
<call id="a4" endpoint="approve">
|
37
54
|
<parameters>
|
38
55
|
<method>post</method>
|
39
56
|
<parameters>
|
40
|
-
<
|
57
|
+
<costs>data.costs</costs>
|
41
58
|
</parameters>
|
42
59
|
</parameters>
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
</loop>
|
49
|
-
</parallel>
|
50
|
-
<choose>
|
51
|
-
<alternative condition="data.costs > 700">
|
52
|
-
<call id="a4" endpoint="approve">
|
53
|
-
<parameters>
|
54
|
-
<method>post</method>
|
55
|
-
<parameters>
|
56
|
-
<costs>data.costs</costs>
|
57
|
-
</parameters>
|
58
|
-
</parameters>
|
59
|
-
</call>
|
60
|
-
</alternative>
|
61
|
-
</choose>
|
62
|
-
</description>
|
60
|
+
</call>
|
61
|
+
</alternative>
|
62
|
+
</choose>
|
63
|
+
</description>
|
64
|
+
</description>
|
63
65
|
<transformation>
|
64
66
|
<description type='copy'/>
|
65
67
|
<dataelements type='rest'/>
|
@@ -10,18 +10,20 @@
|
|
10
10
|
<endpoints>
|
11
11
|
<ep1>Somewhere over the rainbow</ep1>
|
12
12
|
</endpoints>
|
13
|
-
<description
|
14
|
-
<
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
13
|
+
<description>
|
14
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
15
|
+
<manipulate id="endpoints">
|
16
|
+
endpoints.a_new_one = "new Endpoint"
|
17
|
+
endpoints.ep1 = "services changed"
|
18
|
+
endpoints.copy_of_ep1 = endpoints.ep1
|
19
|
+
data.data_stores_endpoint = endpoints.ep1
|
20
|
+
</manipulate>
|
21
|
+
<manipulate id="data">
|
22
|
+
data.a_new_one = "new dataelement"
|
23
|
+
data[:input] = "dataelement changed"
|
24
|
+
data.output = data[:input]
|
25
|
+
</manipulate>
|
26
|
+
</description>
|
25
27
|
</description>
|
26
28
|
<transformation>
|
27
29
|
<description type='external'/>
|
@@ -8,65 +8,67 @@
|
|
8
8
|
<endpoints>
|
9
9
|
<timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
|
10
10
|
</endpoints>
|
11
|
-
<description
|
12
|
-
<
|
13
|
-
<
|
14
|
-
<
|
15
|
-
<
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
<
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
<
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
<
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
<
|
43
|
-
<
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
<
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
<
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
<
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
11
|
+
<description>
|
12
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
13
|
+
<parallel>
|
14
|
+
<parallel_branch>
|
15
|
+
<loop pre_test='data.feedback'>
|
16
|
+
<call id="design" endpoint="timeout">
|
17
|
+
<parameters><!--{{{-->
|
18
|
+
<method>post</method>
|
19
|
+
<parameters>
|
20
|
+
<timeout>4</timeout>
|
21
|
+
</parameters>
|
22
|
+
</parameters><!--}}}-->
|
23
|
+
</call>
|
24
|
+
<call id="validate" endpoint="timeout">
|
25
|
+
<parameters><!--{{{-->
|
26
|
+
<method>post</method>
|
27
|
+
<parameters>
|
28
|
+
<timeout>2</timeout>
|
29
|
+
</parameters>
|
30
|
+
</parameters><!--}}}-->
|
31
|
+
</call>
|
32
|
+
<call id="publish" endpoint="timeout">
|
33
|
+
<parameters><!--{{{-->
|
34
|
+
<method>post</method>
|
35
|
+
<parameters>
|
36
|
+
<timeout>1</timeout>
|
37
|
+
</parameters>
|
38
|
+
</parameters><!--}}}-->
|
39
|
+
</call>
|
40
|
+
</loop>
|
41
|
+
</parallel_branch>
|
42
|
+
<parallel_branch>
|
43
|
+
<loop pre_test='data.feedback'>
|
44
|
+
<call id="prepare" endpoint="timeout">
|
45
|
+
<parameters><!--{{{-->
|
46
|
+
<method>post</method>
|
47
|
+
<parameters>
|
48
|
+
<timeout>4</timeout>
|
49
|
+
</parameters>
|
50
|
+
</parameters><!--}}}-->
|
51
|
+
</call>
|
52
|
+
<call id="fab" endpoint="timeout">
|
53
|
+
<parameters><!--{{{-->
|
54
|
+
<method>post</method>
|
55
|
+
<parameters>
|
56
|
+
<timeout>4</timeout>
|
57
|
+
</parameters>
|
58
|
+
</parameters><!--}}}-->
|
59
|
+
</call>
|
60
|
+
<call id="evaluate" endpoint="timeout">
|
61
|
+
<parameters><!--{{{-->
|
62
|
+
<method>post</method>
|
63
|
+
<parameters>
|
64
|
+
<timeout>4</timeout>
|
65
|
+
</parameters>
|
66
|
+
</parameters><!--}}}-->
|
67
|
+
</call>
|
68
|
+
</loop>
|
69
|
+
</parallel_branch>
|
70
|
+
</parallel>
|
71
|
+
</description>
|
70
72
|
</description>
|
71
73
|
<transformation>
|
72
74
|
<description type='copy'/>
|
data/cockpit/testsets/Linear.xml
CHANGED
@@ -11,35 +11,37 @@
|
|
11
11
|
<endpoints><!--{{{-->
|
12
12
|
<timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
|
13
13
|
</endpoints><!--}}}-->
|
14
|
-
<description
|
15
|
-
<
|
16
|
-
<
|
17
|
-
<
|
18
|
-
|
19
|
-
<
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
<
|
26
|
-
<
|
27
|
-
|
28
|
-
<
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
<
|
35
|
-
<
|
36
|
-
|
37
|
-
<
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
14
|
+
<description>
|
15
|
+
<description xmlns="http://cpee.org/ns/description/1.0"><!--{{{-->
|
16
|
+
<call id="a1" endpoint="timeout">
|
17
|
+
<parameters><!--{{{-->
|
18
|
+
<method>post</method>
|
19
|
+
<parameters>
|
20
|
+
<timeout>2</timeout>
|
21
|
+
</parameters>
|
22
|
+
</parameters><!--}}}-->
|
23
|
+
<manipulate output="result"> data.x += "a1,"</manipulate>
|
24
|
+
</call>
|
25
|
+
<call id="a2" endpoint="timeout">
|
26
|
+
<parameters><!--{{{-->
|
27
|
+
<method>post</method>
|
28
|
+
<parameters>
|
29
|
+
<timeout>4</timeout>
|
30
|
+
</parameters>
|
31
|
+
</parameters><!--}}}-->
|
32
|
+
<manipulate output="result"> data.x += "a2,"</manipulate>
|
33
|
+
</call>
|
34
|
+
<call id="a3" endpoint="timeout">
|
35
|
+
<parameters><!--{{{-->
|
36
|
+
<method>post</method>
|
37
|
+
<parameters>
|
38
|
+
<timeout>4</timeout>
|
39
|
+
</parameters>
|
40
|
+
</parameters><!--}}}-->
|
41
|
+
<manipulate output="result"> data.x += "a3,"</manipulate>
|
42
|
+
</call>
|
43
|
+
</description><!--}}}-->
|
44
|
+
</description>
|
43
45
|
<transformation>
|
44
46
|
<description type='copy'/>
|
45
47
|
<dataelements type='rest'/>
|