cpee 2.0.25 → 2.0.26
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/cockpit/css/ui.css +26 -4
- data/cockpit/edit.html +9 -6
- data/cockpit/graph.html +3 -3
- data/cockpit/index.html +9 -6
- data/cockpit/js/details.js +0 -1
- data/cockpit/js/instance.js +18 -16
- data/cockpit/js/model.js +6 -11
- data/cockpit/js/parameters.js +6 -4
- data/cockpit/model.html +4 -3
- data/cockpit/replay.html +3 -2
- data/cockpit/templates/Coopis 2010.xml +1 -1
- data/cockpit/templates/IUPC arXiv:1104.3609 P34 1.xml +1 -1
- data/cockpit/templates/IUPC arXiv:1104.3609 P34 2.xml +1 -1
- data/cockpit/templates/IUPC arXiv:1104.3609 P34 3.xml +1 -1
- data/cockpit/templates/Track Test Local.xml +6 -2
- data/cockpit/templates/Track Test.xml +5 -1
- data/cockpit/templates/UR-VUE 2020 Manual Adjust.xml +5 -1
- data/cockpit/templates/UR-VUE 2020 Solution Baseline.xml +8 -4
- data/cockpit/templates/UR-VUE 2020 Solution NN.xml +8 -4
- data/cockpit/templates/UR-VUE 2020 Solution View.xml +8 -4
- data/cockpit/templates/UR-VUE 2020.xml +8 -4
- data/cockpit/track.html +3 -3
- data/cpee.gemspec +1 -1
- data/lib/cpee/controller.rb +1 -1
- data/lib/cpee/implementation_callbacks.rb +14 -7
- data/lib/cpee/implementation_notifications.rb +6 -2
- data/server/routing/end.rb +1 -0
- data/server/routing/forward-votes.rb +6 -5
- data/server/routing/persist.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9e9eaa9ba4b50b494dee99870c5564dd6213d0f614203bbbbe991cb2703ba1bf
|
4
|
+
data.tar.gz: 051df4a536afda04e8db5d1de5811fd2c228a27e5bb39d8c2fd46e361aeeb8a6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 36e1c5bcc5c4b3db2dcdbde03e443e771b7a72f1b7b9ce4364275840ef5c1cb7043ddb45f64aae182b6f4087fe6deaa3b340db841d1dc159595317006c17075c
|
7
|
+
data.tar.gz: b3cad1cbf594d0d7d5df34a026332fcfbaccaca613fbbb5e7bc348601360ca099e323ef107aa56d9f7f5f75dbe807d3cf8374d1c39c53f7e39e6d09dd53e15e2
|
data/cockpit/css/ui.css
CHANGED
@@ -106,13 +106,26 @@ ui-tabbed ui-tabbar ui-behind button {
|
|
106
106
|
content: "|";
|
107
107
|
}
|
108
108
|
|
109
|
-
#parameters ui-content { height: 8.5em; min-height:
|
109
|
+
#parameters ui-content { height: 8.5em; min-height: 2.7em; }
|
110
110
|
|
111
|
-
#areadataelements
|
111
|
+
#areadataelements, #areaendpoints, #areaattributes {
|
112
|
+
display: flex;
|
113
|
+
flex-direction: row;
|
114
|
+
align-items: flex-start;
|
115
|
+
height: 100%;
|
116
|
+
}
|
117
|
+
#areadataelements > button, #areaendpoints > button, #areaattributes > button {
|
118
|
+
height: 100%;
|
119
|
+
padding: 0;
|
120
|
+
margin-right: 0.5em;
|
121
|
+
}
|
122
|
+
#areadataelements > button span, #areaendpoints > button span, #areaattributes > button span {
|
123
|
+
display: inline-block;
|
124
|
+
transform: rotate(-90deg);
|
125
|
+
}
|
126
|
+
#areadataelements.inactive, #areaendpoints.inactive, #areaattributes.inactive { display: none; }
|
112
127
|
#areadataelements button.relaxngui_control { display: none; }
|
113
|
-
#areaendpoints { height: 100%; overflow-x: hidden; overflow-y: scroll; }
|
114
128
|
#areaendpoints button.relaxngui_control { display: none; }
|
115
|
-
#areaattributes { height: 100%; overflow-x: hidden; overflow-y: scroll; }
|
116
129
|
#areaattributes button.relaxngui_control { display: none; }
|
117
130
|
|
118
131
|
#areainstance input[type=file] { display: none; }
|
@@ -154,6 +167,9 @@ ui-tabbed ui-tabbar ui-behind button {
|
|
154
167
|
margin:0;
|
155
168
|
padding:0;
|
156
169
|
width: 100%;
|
170
|
+
height: 100%;
|
171
|
+
overflow-x: hidden;
|
172
|
+
overflow-y: scroll;
|
157
173
|
}
|
158
174
|
|
159
175
|
#dat_dataelements {
|
@@ -163,6 +179,9 @@ ui-tabbed ui-tabbar ui-behind button {
|
|
163
179
|
margin:0;
|
164
180
|
padding:0;
|
165
181
|
width: 100%;
|
182
|
+
height: 100%;
|
183
|
+
overflow-x: hidden;
|
184
|
+
overflow-y: scroll;
|
166
185
|
}
|
167
186
|
#dat_attributes {
|
168
187
|
border-collapse:collapse;
|
@@ -171,6 +190,9 @@ ui-tabbed ui-tabbar ui-behind button {
|
|
171
190
|
margin:0;
|
172
191
|
padding:0;
|
173
192
|
width: 100%;
|
193
|
+
height: 100%;
|
194
|
+
overflow-x: hidden;
|
195
|
+
overflow-y: scroll;
|
174
196
|
}
|
175
197
|
|
176
198
|
#areadsl div { padding: 0 1em; }
|
data/cockpit/edit.html
CHANGED
@@ -36,11 +36,11 @@
|
|
36
36
|
|
37
37
|
<script type="text/javascript" src="/js_libs/relaxngui.js"></script>
|
38
38
|
|
39
|
-
<script type="text/javascript" src="/js_libs/
|
39
|
+
<script type="text/javascript" src="/js_libs/uidash.js"></script>
|
40
40
|
<script type="text/javascript" src="/js_libs/custommenu.js"></script>
|
41
41
|
|
42
42
|
<link rel="stylesheet" href="/js_libs/custommenu.css" type="text/css"/>
|
43
|
-
<link rel="stylesheet" href="/js_libs/
|
43
|
+
<link rel="stylesheet" href="/js_libs/uidash.css" type="text/css"/>
|
44
44
|
|
45
45
|
<link rel="stylesheet" href="/js_libs/relaxngui.css" type="text/css"/>
|
46
46
|
|
@@ -61,7 +61,7 @@
|
|
61
61
|
/* shit balls, no elegance is left in this world */
|
62
62
|
</style>
|
63
63
|
</head>
|
64
|
-
<body data-base-port="8298" data-res-port="9303" data-theme-base="themes" is="x-ui">
|
64
|
+
<body data-base-port="8298" data-res-port="9303" data-theme-base="themes" is="x-ui-">
|
65
65
|
<div id='disclaimer' class='hidden'> <!--{{{-->
|
66
66
|
<h1>Disclaimer</h1>
|
67
67
|
|
@@ -213,17 +213,20 @@
|
|
213
213
|
<ui-tab class="" data-tab="dataelements" id="tabdataelements">Data Elements</ui-tab>
|
214
214
|
<ui-tab class="inactive" data-tab="endpoints" id="tabendpoints" >Endpoints</ui-tab>
|
215
215
|
<ui-tab class="inactive" data-tab="attributes" id="tabattributes" >Attributes</ui-tab>
|
216
|
-
<ui-behind
|
216
|
+
<ui-behind ></ui-behind>
|
217
217
|
</ui-tabbar>
|
218
218
|
<ui-content>
|
219
219
|
<ui-area data-belongs-to-tab="dataelements" id="areadataelements"> <!--{{{-->
|
220
|
+
<button title='add entry'><span>New</span></button>
|
220
221
|
<div id="dat_dataelements"></div>
|
221
222
|
</ui-area> <!--}}}-->
|
222
223
|
<ui-area data-belongs-to-tab="endpoints" id="areaendpoints" class="inactive"> <!--{{{-->
|
223
|
-
<
|
224
|
+
<button title='add entry'><span>New</span></button>
|
225
|
+
<div id="dat_endpoints"></div>
|
224
226
|
</ui-area> <!--}}}-->
|
225
227
|
<ui-area data-belongs-to-tab="attributes" id="areaattributes" class="inactive"> <!--{{{-->
|
226
|
-
<
|
228
|
+
<button title='add entry'><span>New</span></button>
|
229
|
+
<div id="dat_attributes"></div>
|
227
230
|
</ui-area> <!--}}}-->
|
228
231
|
</ui-content>
|
229
232
|
</ui-tabbed>
|
data/cockpit/graph.html
CHANGED
@@ -37,11 +37,11 @@
|
|
37
37
|
|
38
38
|
<script type="text/javascript" src="/js_libs/relaxngui.js"></script>
|
39
39
|
|
40
|
-
<script type="text/javascript" src="/js_libs/
|
40
|
+
<script type="text/javascript" src="/js_libs/uidash.js"></script>
|
41
41
|
<script type="text/javascript" src="/js_libs/custommenu.js"></script>
|
42
42
|
|
43
43
|
<link rel="stylesheet" href="/js_libs/custommenu.css" type="text/css"/>
|
44
|
-
<link rel="stylesheet" href="/js_libs/
|
44
|
+
<link rel="stylesheet" href="/js_libs/uidash.css" type="text/css"/>
|
45
45
|
|
46
46
|
<link rel="stylesheet" href="/js_libs/relaxngui.css" type="text/css"/>
|
47
47
|
|
@@ -56,7 +56,7 @@
|
|
56
56
|
<script type="text/javascript" src="js/parameters.js"></script>
|
57
57
|
<link rel="stylesheet" href="css/ui.css" type="text/css"/>
|
58
58
|
</head>
|
59
|
-
<body data-base-port="8298" data-res-port="9303" data-theme-base="themes" is="x-ui">
|
59
|
+
<body data-base-port="8298" data-res-port="9303" data-theme-base="themes" is="x-ui-">
|
60
60
|
<div class='hidden' id='relaxngworker'></div>
|
61
61
|
<div id="trackfull">
|
62
62
|
<div id='graphcolumn'>
|
data/cockpit/index.html
CHANGED
@@ -36,11 +36,11 @@
|
|
36
36
|
|
37
37
|
<script type="text/javascript" src="/js_libs/relaxngui.js"></script>
|
38
38
|
|
39
|
-
<script type="text/javascript" src="/js_libs/
|
39
|
+
<script type="text/javascript" src="/js_libs/uidash.js"></script>
|
40
40
|
<script type="text/javascript" src="/js_libs/custommenu.js"></script>
|
41
41
|
|
42
42
|
<link rel="stylesheet" href="/js_libs/custommenu.css" type="text/css"/>
|
43
|
-
<link rel="stylesheet" href="/js_libs/
|
43
|
+
<link rel="stylesheet" href="/js_libs/uidash.css" type="text/css"/>
|
44
44
|
|
45
45
|
<link rel="stylesheet" href="/js_libs/relaxngui.css" type="text/css"/>
|
46
46
|
|
@@ -60,7 +60,7 @@
|
|
60
60
|
/* shit balls, no elegance is left in this world */
|
61
61
|
</style>
|
62
62
|
</head>
|
63
|
-
<body data-base-port="8298" data-res-port="9303" data-theme-base="themes" is="x-ui">
|
63
|
+
<body data-base-port="8298" data-res-port="9303" data-theme-base="themes" is="x-ui-">
|
64
64
|
<div id='disclaimer' class='hidden'> <!--{{{-->
|
65
65
|
<h1>Disclaimer</h1>
|
66
66
|
|
@@ -211,17 +211,20 @@
|
|
211
211
|
<ui-tab class="" data-tab="dataelements" id="tabdataelements">Data Elements</ui-tab>
|
212
212
|
<ui-tab class="inactive" data-tab="endpoints" id="tabendpoints" >Endpoints</ui-tab>
|
213
213
|
<ui-tab class="inactive" data-tab="attributes" id="tabattributes" >Attributes</ui-tab>
|
214
|
-
<ui-behind
|
214
|
+
<ui-behind ></ui-behind>
|
215
215
|
</ui-tabbar>
|
216
216
|
<ui-content>
|
217
217
|
<ui-area data-belongs-to-tab="dataelements" id="areadataelements"> <!--{{{-->
|
218
|
+
<button title='add entry'><span>New</span></button>
|
218
219
|
<div id="dat_dataelements"></div>
|
219
220
|
</ui-area> <!--}}}-->
|
220
221
|
<ui-area data-belongs-to-tab="endpoints" id="areaendpoints" class="inactive"> <!--{{{-->
|
221
|
-
<
|
222
|
+
<button title='add entry'><span>New</span></button>
|
223
|
+
<div id="dat_endpoints"></div>
|
222
224
|
</ui-area> <!--}}}-->
|
223
225
|
<ui-area data-belongs-to-tab="attributes" id="areaattributes" class="inactive"> <!--{{{-->
|
224
|
-
<
|
226
|
+
<button title='add entry'><span>New</span></button>
|
227
|
+
<div id="dat_attributes"></div>
|
225
228
|
</ui-area> <!--}}}-->
|
226
229
|
</ui-content>
|
227
230
|
</ui-tabbed>
|
data/cockpit/js/details.js
CHANGED
@@ -49,7 +49,6 @@ function do_main_work() { //{{{
|
|
49
49
|
var origtype = orignode.attr('element-type') + '_' + orignode.attr('element-endpoint');
|
50
50
|
|
51
51
|
var url = $('body').attr('current-instance');
|
52
|
-
$('#main ui-tabbar ui-behind button').removeClass('highlight');
|
53
52
|
save['details'].set_checkpoint();
|
54
53
|
|
55
54
|
var nnew = $(save['details'].save().documentElement);
|
data/cockpit/js/instance.js
CHANGED
@@ -82,7 +82,7 @@ var sub_less = 'topic' + '=' + 'activity' + '&' +// {{{
|
|
82
82
|
|
83
83
|
function cockpit() { //{{{
|
84
84
|
$("button[name=base]").click(function(){ create_instance($("input[name=base-url]").val(),null,false,false); });
|
85
|
-
$("button[name=instance]").click(function(){
|
85
|
+
$("button[name=instance]").click(function(){ uidash_activate_tab("#tabinstance"); monitor_instance($("input[name=instance-url]").val(),$("input[name=res-url]").val(),false,false); });
|
86
86
|
$("button[name=loadtestset]").click(function(e){new CustomMenu(e).menu($('#templates'),function(){ load_testset(false) } ); });
|
87
87
|
$("button[name=loadtestsetfile]").click(load_testsetfile);
|
88
88
|
$("button[name=loadmodelfile]").click(load_modelfile);
|
@@ -107,8 +107,8 @@ function cockpit() { //{{{
|
|
107
107
|
});
|
108
108
|
var q = $.parseQuerySimple();
|
109
109
|
if (q.min || q.min == "") {
|
110
|
-
|
111
|
-
|
110
|
+
uidash_toggle_vis_tab($('#instance'));
|
111
|
+
uidash_toggle_vis_tab($('#parameters'));
|
112
112
|
}
|
113
113
|
if (q.monitor && q.load) {
|
114
114
|
if (q.load.match(/https?:\/\//)) {
|
@@ -118,7 +118,7 @@ function cockpit() { //{{{
|
|
118
118
|
if ($(v).text() == q.load) { $(v).attr('data-selected','selected'); }
|
119
119
|
});
|
120
120
|
}
|
121
|
-
|
121
|
+
uidash_activate_tab("#tabexecution");
|
122
122
|
monitor_instance(q.monitor,$("body").attr('current-resources'),true,false);
|
123
123
|
} else if (q.load) {
|
124
124
|
if (q.load.match(/https?:\/\//)) {
|
@@ -128,20 +128,20 @@ function cockpit() { //{{{
|
|
128
128
|
if ($(v).text() == q.load) { $(v).attr('data-selected','selected'); }
|
129
129
|
});
|
130
130
|
}
|
131
|
-
|
131
|
+
uidash_activate_tab("#tabexecution");
|
132
132
|
create_instance($("body").attr('current-base'),q.load,true,false);
|
133
133
|
} else if (q.instantiate) {
|
134
134
|
if (q.instantiate.match(/https?:\/\//)) {
|
135
|
-
|
135
|
+
uidash_activate_tab("#tabexecution");
|
136
136
|
create_instance_from($("body").attr('current-base'),q.instantiate,false);
|
137
137
|
} else {
|
138
138
|
alert('Nope. Url!');
|
139
139
|
}
|
140
140
|
} else if (q.new || q.new == "") {
|
141
|
-
|
141
|
+
uidash_activate_tab("#tabinstance");
|
142
142
|
create_instance($("body").attr('current-base'),"Plain Instance",false,false);
|
143
143
|
} else if (q.monitor) {
|
144
|
-
|
144
|
+
uidash_activate_tab("#tabexecution");
|
145
145
|
monitor_instance(q.monitor,$("body").attr('current-resources'),false,false);
|
146
146
|
} else if (q.exec) {
|
147
147
|
if (q.exec.match(/https?:\/\//)) {
|
@@ -151,7 +151,7 @@ function cockpit() { //{{{
|
|
151
151
|
if ($(v).text() == q.exec) { $(v).attr('data-selected','selected'); }
|
152
152
|
});
|
153
153
|
}
|
154
|
-
|
154
|
+
uidash_activate_tab("#tabexecution");
|
155
155
|
create_instance($("body").attr('current-base'),q.exec,true,true);
|
156
156
|
}
|
157
157
|
}
|
@@ -324,7 +324,7 @@ function monitor_instance(cin,rep,load,exec) {// {{{
|
|
324
324
|
$("input[name=instance-url]").val($("body").attr('current-instance'));
|
325
325
|
$("input[name=res-url]").val($("body").attr('current-resources'));
|
326
326
|
|
327
|
-
$('
|
327
|
+
$('#parameters ui-content ui-area > button').attr('disabled','disabled');
|
328
328
|
$('#dat_details').empty();
|
329
329
|
|
330
330
|
url = $("body").attr('current-instance');
|
@@ -380,7 +380,7 @@ function monitor_instance(cin,rep,load,exec) {// {{{
|
|
380
380
|
},
|
381
381
|
error: function(a,b,c) {
|
382
382
|
alert("This ain't no CPEE instance");
|
383
|
-
|
383
|
+
uidash_activate_tab("#tabnew");
|
384
384
|
}
|
385
385
|
});
|
386
386
|
}// }}}
|
@@ -726,10 +726,11 @@ function monitor_instance_state_change(notification) { //{{{
|
|
726
726
|
}
|
727
727
|
|
728
728
|
if (notification != "ready" && notification != "stopped" && notification != "running") {
|
729
|
-
|
729
|
+
console.log('rrr');
|
730
|
+
$('#parameters ui-content ui-area > button').attr('disabled','disabled');
|
730
731
|
$('#state_any').hide();
|
731
732
|
} else {
|
732
|
-
$('#parameters
|
733
|
+
$('#parameters ui-content ui-area > button').removeAttr('disabled');
|
733
734
|
$('#state_any').show();
|
734
735
|
}
|
735
736
|
|
@@ -1026,7 +1027,6 @@ function load_testset(exec) {// {{{
|
|
1026
1027
|
url: url,
|
1027
1028
|
success: function(res){
|
1028
1029
|
save['dsl'] = null; // reload dsl and position under all circumstances
|
1029
|
-
$('#main .tabbehind button').hide();
|
1030
1030
|
$('#dat_details').empty();
|
1031
1031
|
|
1032
1032
|
document.title = "Untitled";
|
@@ -1210,8 +1210,10 @@ function format_visual_vote_clear() {//{{{
|
|
1210
1210
|
|
1211
1211
|
function format_instance_pos() { //{{{
|
1212
1212
|
$(save['instance_pos']).each(function(){
|
1213
|
-
|
1214
|
-
|
1213
|
+
console.log(this);
|
1214
|
+
var taskname = this.nodeName;
|
1215
|
+
var taskstate = this.textContent;
|
1216
|
+
format_visual_add(taskname,save['state'] == 'running' ? (taskstate == 'at' ? 'active' : 'passive') : 'passive');
|
1215
1217
|
});
|
1216
1218
|
} //}}}
|
1217
1219
|
|
data/cockpit/js/model.js
CHANGED
@@ -1,16 +1,11 @@
|
|
1
1
|
$(document).ready(function() {
|
2
|
-
$('#
|
3
|
-
$('#model ui-
|
4
|
-
});
|
5
|
-
$('#tabdataelements').click(function(event){
|
6
|
-
$('#model ui-behind button:nth-child(1)').removeClass('hidden');
|
7
|
-
});
|
8
|
-
|
9
|
-
$('#model ui-behind button:nth-child(1)').click(function(event){
|
10
|
-
var but = $(document).find('#model ui-content ui-area:not(.inactive) button');
|
2
|
+
$('#model ui-content ui-area > button').click(function(event){
|
3
|
+
var but = $(document).find('#model ui-content ui-area:not(.inactive) > div button');
|
11
4
|
but.click();
|
12
|
-
var
|
13
|
-
|
5
|
+
var inp = $(document).find('#model ui-content ui-area:not(.inactive) > div input');
|
6
|
+
$(inp[inp.length-2]).focus();
|
7
|
+
var are = $(document).find('#model ui-content ui-area:not(.inactive) > div');
|
8
|
+
var tab = $(document).find('#model ui-content ui-area:not(.inactive) > div > div');
|
14
9
|
are.animate({ scrollTop: tab.height() }, "slow");
|
15
10
|
});
|
16
11
|
});
|
data/cockpit/js/parameters.js
CHANGED
@@ -30,11 +30,13 @@ $(document).ready(function() {
|
|
30
30
|
}); //}}}
|
31
31
|
|
32
32
|
// new entry //{{{
|
33
|
-
$('#parameters ui-
|
34
|
-
var but = $(document).find('#parameters ui-content ui-area:not(.inactive) button');
|
33
|
+
$('#parameters ui-content ui-area > button').click(function(event){
|
34
|
+
var but = $(document).find('#parameters ui-content ui-area:not(.inactive) > div button');
|
35
35
|
but.click();
|
36
|
-
var
|
37
|
-
|
36
|
+
var inp = $(document).find('#parameters ui-content ui-area:not(.inactive) > div input');
|
37
|
+
$(inp[inp.length-2]).focus();
|
38
|
+
var are = $(document).find('#parameters ui-content ui-area:not(.inactive) > div');
|
39
|
+
var tab = $(document).find('#parameters ui-content ui-area:not(.inactive) > div > div');
|
38
40
|
are.animate({ scrollTop: tab.height() }, "slow");
|
39
41
|
}); //}}}
|
40
42
|
|
data/cockpit/model.html
CHANGED
@@ -36,11 +36,11 @@
|
|
36
36
|
|
37
37
|
<script type="text/javascript" src="/js_libs/relaxngui.js"></script>
|
38
38
|
|
39
|
-
<script type="text/javascript" src="/js_libs/
|
39
|
+
<script type="text/javascript" src="/js_libs/uidash.js"></script>
|
40
40
|
<script type="text/javascript" src="/js_libs/custommenu.js"></script>
|
41
41
|
|
42
42
|
<link rel="stylesheet" href="/js_libs/custommenu.css" type="text/css"/>
|
43
|
-
<link rel="stylesheet" href="/js_libs/
|
43
|
+
<link rel="stylesheet" href="/js_libs/uidash.css" type="text/css"/>
|
44
44
|
|
45
45
|
<link rel="stylesheet" href="/js_libs/relaxngui.css" type="text/css"/>
|
46
46
|
|
@@ -63,7 +63,7 @@
|
|
63
63
|
/* shit balls, no elegance is left in this world */
|
64
64
|
</style>
|
65
65
|
</head>
|
66
|
-
<body data-base-port="8298" data-res-port="9303" data-theme-base="themes" is="x-ui">
|
66
|
+
<body data-base-port="8298" data-res-port="9303" data-theme-base="themes" is="x-ui-">
|
67
67
|
<div id='disclaimer' class='hidden'> <!--{{{-->
|
68
68
|
<h1>Disclaimer</h1>
|
69
69
|
|
@@ -161,6 +161,7 @@
|
|
161
161
|
</div>
|
162
162
|
</ui-area> <!--}}}-->
|
163
163
|
<ui-area data-belongs-to-tab="dataelements" id="areadataelements" class="inactive"> <!--{{{-->
|
164
|
+
<button title='add entry'><span>New</span></button>
|
164
165
|
<div id="dat_dataelements"></div>
|
165
166
|
</ui-area> <!--}}}-->
|
166
167
|
</ui-content>
|
data/cockpit/replay.html
CHANGED
@@ -36,14 +36,15 @@
|
|
36
36
|
<script type="text/javascript" src="/js_libs/jquery.cookie.js"></script>
|
37
37
|
<script type="text/javascript" src="/js_libs/js-yaml.min.js"></script>
|
38
38
|
|
39
|
-
<script type="text/javascript" src="/js_libs/
|
39
|
+
<script type="text/javascript" src="/js_libs/uidash.js"></script>
|
40
|
+
<link rel="stylesheet" href="/js_libs/uidash.css" type="text/css"/>
|
40
41
|
|
41
42
|
<!-- custom stuff, play arround -->
|
42
43
|
<script type="text/javascript" src="js/replay.js"></script>
|
43
44
|
<link rel="stylesheet" href="css/ui.css" type="text/css"/>
|
44
45
|
<link rel="stylesheet" href="css/replay.css" type="text/css"/>
|
45
46
|
</head>
|
46
|
-
<body is="x-ui">
|
47
|
+
<body is="x-ui-">
|
47
48
|
<div id="replayer">
|
48
49
|
<div id="replay"><span>Replay:</span><input type="text" value="http://localhost/logs/4b92138d-1f68-4d18-b676-92fb1cbe2c78.xes.yaml"/><button>Prepare!</button></div>
|
49
50
|
<iframe id="content" src=""></iframe>
|
@@ -73,10 +73,14 @@
|
|
73
73
|
<endpoints type="none"/>
|
74
74
|
</transformation>
|
75
75
|
<attributes>
|
76
|
-
<info>Track Test</info>
|
76
|
+
<info>Track Test Local</info>
|
77
77
|
<modeltype>CPEE</modeltype>
|
78
78
|
<theme>default</theme>
|
79
79
|
<customer>pilotfabrik</customer>
|
80
80
|
<status>development</status>
|
81
|
+
<creator>Christine Ashcreek</creator>
|
82
|
+
<author>Christine Ashcreek</author>
|
83
|
+
<design_stage>development</design_stage>
|
84
|
+
<design_dir>/home/demo/Projects/cpee/cockpit/templates</design_dir>
|
81
85
|
</attributes>
|
82
|
-
</testset>
|
86
|
+
</testset>
|
@@ -78,5 +78,9 @@
|
|
78
78
|
<theme>default</theme>
|
79
79
|
<customer>pilotfabrik</customer>
|
80
80
|
<status>development</status>
|
81
|
+
<creator>Christine Ashcreek</creator>
|
82
|
+
<author>Christine Ashcreek</author>
|
83
|
+
<design_stage>development</design_stage>
|
84
|
+
<design_dir>/home/demo/Projects/cpee/cockpit/templates</design_dir>
|
81
85
|
</attributes>
|
82
|
-
</testset>
|
86
|
+
</testset>
|
@@ -178,5 +178,9 @@ data.item['adjust_y'] = (data.direction_first['y'] + data.direction_second['y'])
|
|
178
178
|
<modeltype>CPEE</modeltype>
|
179
179
|
<theme>preset</theme>
|
180
180
|
<resource>ur51</resource>
|
181
|
+
<creator>Christine Ashcreek</creator>
|
182
|
+
<author>Christine Ashcreek</author>
|
183
|
+
<design_stage>development</design_stage>
|
184
|
+
<design_dir>/home/demo/Projects/cpee/cockpit/templates</design_dir>
|
181
185
|
</attributes>
|
182
|
-
</testset>
|
186
|
+
</testset>
|
@@ -5,9 +5,9 @@
|
|
5
5
|
<handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
|
6
6
|
<handlers>
|
7
7
|
<handler url="http://tango.wst.univie.ac.at:9332">
|
8
|
-
<votes topic=
|
9
|
-
<events topic=
|
10
|
-
<events topic=
|
8
|
+
<votes topic="state">change</votes>
|
9
|
+
<events topic="state">change</events>
|
10
|
+
<events topic="task">instantiation</events>
|
11
11
|
</handler>
|
12
12
|
</handlers>
|
13
13
|
<endpoints>
|
@@ -199,5 +199,9 @@ data.item['y'] = data.items.first['y'] + data.item['adjust_y']</finalize>
|
|
199
199
|
<modeltype>CPEE</modeltype>
|
200
200
|
<theme>preset</theme>
|
201
201
|
<resource>ur51</resource>
|
202
|
+
<creator>Christine Ashcreek</creator>
|
203
|
+
<author>Christine Ashcreek</author>
|
204
|
+
<design_stage>development</design_stage>
|
205
|
+
<design_dir>/home/demo/Projects/cpee/cockpit/templates</design_dir>
|
202
206
|
</attributes>
|
203
|
-
</testset>
|
207
|
+
</testset>
|
@@ -5,9 +5,9 @@
|
|
5
5
|
<handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
|
6
6
|
<handlers>
|
7
7
|
<handler url="http://tango.wst.univie.ac.at:9332">
|
8
|
-
<votes topic=
|
9
|
-
<events topic=
|
10
|
-
<events topic=
|
8
|
+
<votes topic="state">change</votes>
|
9
|
+
<events topic="state">change</events>
|
10
|
+
<events topic="task">instantiation</events>
|
11
11
|
</handler>
|
12
12
|
</handlers>
|
13
13
|
<endpoints>
|
@@ -193,5 +193,9 @@ data.item = result[0]</finalize>
|
|
193
193
|
<modeltype>CPEE</modeltype>
|
194
194
|
<theme>preset</theme>
|
195
195
|
<resource>ur51</resource>
|
196
|
+
<creator>Christine Ashcreek</creator>
|
197
|
+
<author>Christine Ashcreek</author>
|
198
|
+
<design_stage>development</design_stage>
|
199
|
+
<design_dir>/home/demo/Projects/cpee/cockpit/templates</design_dir>
|
196
200
|
</attributes>
|
197
|
-
</testset>
|
201
|
+
</testset>
|
@@ -3,9 +3,9 @@
|
|
3
3
|
<handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
|
4
4
|
<handlers>
|
5
5
|
<handler url="http://tango.wst.univie.ac.at:9332">
|
6
|
-
<votes topic=
|
7
|
-
<events topic=
|
8
|
-
<events topic=
|
6
|
+
<votes topic="state">change</votes>
|
7
|
+
<events topic="state">change</events>
|
8
|
+
<events topic="task">instantiation</events>
|
9
9
|
</handler>
|
10
10
|
</handlers>
|
11
11
|
<endpoints>
|
@@ -147,5 +147,9 @@ data.item = result[0]</finalize>
|
|
147
147
|
<modeltype>CPEE</modeltype>
|
148
148
|
<theme>preset</theme>
|
149
149
|
<resource>ur51</resource>
|
150
|
+
<creator>Christine Ashcreek</creator>
|
151
|
+
<author>Christine Ashcreek</author>
|
152
|
+
<design_stage>development</design_stage>
|
153
|
+
<design_dir>/home/demo/Projects/cpee/cockpit/templates</design_dir>
|
150
154
|
</attributes>
|
151
|
-
</testset>
|
155
|
+
</testset>
|
@@ -2,9 +2,9 @@
|
|
2
2
|
<handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
|
3
3
|
<handlers>
|
4
4
|
<handler url="http://tango.wst.univie.ac.at:9332">
|
5
|
-
<votes topic=
|
6
|
-
<events topic=
|
7
|
-
<events topic=
|
5
|
+
<votes topic="state">change</votes>
|
6
|
+
<events topic="state">change</events>
|
7
|
+
<events topic="task">instantiation</events>
|
8
8
|
</handler>
|
9
9
|
</handlers>
|
10
10
|
<endpoints>
|
@@ -22,5 +22,9 @@
|
|
22
22
|
</endpoints>
|
23
23
|
<attributes>
|
24
24
|
<resource>ur51</resource>
|
25
|
+
<creator>Christine Ashcreek</creator>
|
26
|
+
<author>Christine Ashcreek</author>
|
27
|
+
<design_stage>development</design_stage>
|
28
|
+
<design_dir>/home/demo/Projects/cpee/cockpit/templates</design_dir>
|
25
29
|
</attributes>
|
26
|
-
</testset>
|
30
|
+
</testset>
|
data/cockpit/track.html
CHANGED
@@ -37,11 +37,11 @@
|
|
37
37
|
|
38
38
|
<script type="text/javascript" src="/js_libs/relaxngui.js"></script>
|
39
39
|
|
40
|
-
<script type="text/javascript" src="/js_libs/
|
40
|
+
<script type="text/javascript" src="/js_libs/uidash.js"></script>
|
41
41
|
<script type="text/javascript" src="/js_libs/custommenu.js"></script>
|
42
42
|
|
43
43
|
<link rel="stylesheet" href="/js_libs/custommenu.css" type="text/css"/>
|
44
|
-
<link rel="stylesheet" href="/js_libs/
|
44
|
+
<link rel="stylesheet" href="/js_libs/uidash.css" type="text/css"/>
|
45
45
|
|
46
46
|
<link rel="stylesheet" href="/js_libs/relaxngui.css" type="text/css"/>
|
47
47
|
|
@@ -58,7 +58,7 @@
|
|
58
58
|
<link rel="stylesheet" href="css/ui.css" type="text/css"/>
|
59
59
|
<link rel="stylesheet" href="css/track.css" type="text/css"/>
|
60
60
|
</head>
|
61
|
-
<body data-base-port="8298" data-res-port="9303" data-theme-base="themes" is="x-ui">
|
61
|
+
<body data-base-port="8298" data-res-port="9303" data-theme-base="themes" is="x-ui-">
|
62
62
|
<div class='hidden' id='relaxngworker'></div>
|
63
63
|
<div id="trackfull">
|
64
64
|
<div id='graphcolumn'>
|
data/cpee.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = "cpee"
|
3
|
-
s.version = "2.0.
|
3
|
+
s.version = "2.0.26"
|
4
4
|
s.platform = Gem::Platform::RUBY
|
5
5
|
s.license = "LGPL-3.0"
|
6
6
|
s.summary = "Preliminary release of cloud process execution engine (cpee.org). If you just need workflow execution, without a rest service exposing it, then use WEEL."
|
data/lib/cpee/controller.rb
CHANGED
@@ -167,7 +167,7 @@ module CPEE
|
|
167
167
|
@votes += votes
|
168
168
|
psredis = @opts[:redis_dyn].call
|
169
169
|
collect = []
|
170
|
-
psredis.subscribe(votes.map{|e| ['vote-response:' + e.to_s
|
170
|
+
psredis.subscribe(votes.map{|e| ['vote-response:' + e.to_s] }.flatten) do |on|
|
171
171
|
on.message do |what, message|
|
172
172
|
index = message.index(' ')
|
173
173
|
mess = message[index+1..-1]
|
@@ -36,13 +36,20 @@ module CPEE
|
|
36
36
|
opts = @a[1]
|
37
37
|
callback = @r[-1]
|
38
38
|
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
39
|
+
if opts[:redis].sismember("instance:#{id}/callbacks",callback)
|
40
|
+
res = {}
|
41
|
+
res[:uuid] = opts[:redis].get("instance:#{id}/callback/#{callback}/uuid")
|
42
|
+
res[:type] = opts[:redis].get("instance:#{id}/callback/#{callback}/type")
|
43
|
+
res[:position] = opts[:redis].get("instance:#{id}/callback/#{callback}/position")
|
44
|
+
res[:label] = opts[:redis].get("instance:#{id}/callback/#{callback}/label")
|
45
|
+
if sub = opts[:redis].get("instance:#{id}/callback/#{callback}/subscription")
|
46
|
+
res[:subscription] = sub
|
47
|
+
end
|
44
48
|
|
45
|
-
|
49
|
+
Riddl::Parameter::Complex.new("callback","application/json",JSON.generate(res))
|
50
|
+
else
|
51
|
+
@status = 404
|
52
|
+
end
|
46
53
|
end
|
47
54
|
end #}}}
|
48
55
|
|
@@ -75,7 +82,7 @@ module CPEE
|
|
75
82
|
opts[:redis]
|
76
83
|
)
|
77
84
|
else
|
78
|
-
@status =
|
85
|
+
@status = 404
|
79
86
|
end
|
80
87
|
nil
|
81
88
|
end
|
@@ -169,8 +169,12 @@ module CPEE
|
|
169
169
|
conn.psubscribe('forward:*','event:state/change') do |on|
|
170
170
|
on.pmessage do |pat, what, message|
|
171
171
|
if pat == 'forward:*'
|
172
|
-
|
173
|
-
opts.dig(:sse_connections,id.to_i,key)
|
172
|
+
id, key = what.match(/forward:([^\/]+)\/(.+)/).captures
|
173
|
+
if sse = opts.dig(:sse_connections,id.to_i,key)
|
174
|
+
sse.send message
|
175
|
+
else
|
176
|
+
DeleteSubscription::set(id,opts,key)
|
177
|
+
end
|
174
178
|
elsif pat == 'event:state/change'
|
175
179
|
mess = JSON.parse(message[message.index(' ')+1..-1])
|
176
180
|
state = mess.dig('content','state')
|
data/server/routing/end.rb
CHANGED
@@ -46,6 +46,7 @@ Daemonite.new do |opts|
|
|
46
46
|
multi.del("instance:#{instance}/callback/#{key}/label")
|
47
47
|
multi.del("instance:#{instance}/callback/#{key}/position")
|
48
48
|
multi.del("instance:#{instance}/callback/#{key}/type")
|
49
|
+
multi.del("instance:#{instance}/callback/#{key}/subscription")
|
49
50
|
end
|
50
51
|
rescue => e
|
51
52
|
puts e.message
|
@@ -24,7 +24,8 @@ require_relative '../../lib/cpee/redis'
|
|
24
24
|
def persist_handler(instance,key,mess,redis) #{{{
|
25
25
|
redis.multi do |multi|
|
26
26
|
multi.sadd("instance:#{instance}/callbacks",key)
|
27
|
-
multi.set("instance:#{instance}/callback/#{key}/
|
27
|
+
multi.set("instance:#{instance}/callback/#{key}/subscription",mess.dig('content','subscription'))
|
28
|
+
multi.set("instance:#{instance}/callback/#{key}/uuid",mess.dig('content','activity-uuid'))
|
28
29
|
multi.set("instance:#{instance}/callback/#{key}/label",mess.dig('content','label'))
|
29
30
|
multi.set("instance:#{instance}/callback/#{key}/position",mess.dig('content','activity'))
|
30
31
|
multi.set("instance:#{instance}/callback/#{key}/type",'vote')
|
@@ -79,7 +80,7 @@ Daemonite.new do |opts|
|
|
79
80
|
url = opts[:redis].get("instance:#{instance}/handlers/#{subscription_key}/url")
|
80
81
|
|
81
82
|
if url.nil? || url == ""
|
82
|
-
persist_handler instance, callback_key, m, redis
|
83
|
+
persist_handler instance, callback_key, m, opts[:redis]
|
83
84
|
opts[:redis].publish("forward:#{instance}/#{subscription_key}",mess)
|
84
85
|
else
|
85
86
|
client = Riddl::Client.new(url)
|
@@ -104,12 +105,12 @@ Daemonite.new do |opts|
|
|
104
105
|
result[0].value.read
|
105
106
|
end
|
106
107
|
if (headers["CPEE_CALLBACK"] && headers["CPEE_CALLBACK"] == 'true') || val == 'callback'
|
107
|
-
persist_handler instance, callback_key, m, redis
|
108
|
+
persist_handler instance, callback_key, m, opts[:redis]
|
108
109
|
else # they may send true or false
|
109
|
-
send_response instance, callback_key, m['cpee'], val, redis
|
110
|
+
send_response instance, callback_key, m['cpee'], val, opts[:redis]
|
110
111
|
end
|
111
112
|
else
|
112
|
-
send_response instance, callback_key, m['cpee'], true, redis
|
113
|
+
send_response instance, callback_key, m['cpee'], true, opts[:redis]
|
113
114
|
end
|
114
115
|
end
|
115
116
|
end
|
data/server/routing/persist.rb
CHANGED
@@ -59,7 +59,7 @@ Daemonite.new do |opts|
|
|
59
59
|
key = mess.dig('content','key')
|
60
60
|
opts[:redis].multi do |multi|
|
61
61
|
multi.sadd("instance:#{instance}/callbacks",key)
|
62
|
-
multi.set("instance:#{instance}/callback/#{key}/uuid",mess.dig('content','
|
62
|
+
multi.set("instance:#{instance}/callback/#{key}/uuid",mess.dig('content','activity-uuid'))
|
63
63
|
multi.set("instance:#{instance}/callback/#{key}/label",mess.dig('content','label'))
|
64
64
|
multi.set("instance:#{instance}/callback/#{key}/position",mess.dig('content','activity'))
|
65
65
|
multi.set("instance:#{instance}/callback/#{key}/type",'callback')
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cpee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.26
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Juergen eTM Mangler
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: tools
|
12
12
|
cert_chain: []
|
13
|
-
date: 2021-03-
|
13
|
+
date: 2021-03-23 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: riddl
|