cpee 1.3.215 → 1.3.216
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/js/instance.js +1 -1
- data/cockpit/js/wfadaptor.js +5 -4
- data/cpee.gemspec +1 -1
- data/lib/cpee/implementation.rb +6 -3
- data/server/instances/28/properties.xml +156 -0
- data/server/instances/29/properties.xml +156 -0
- data/server/instances/30/properties.xml +354 -0
- data/server/instances/31/notifications/7137ae72f6579c3d3228bb68bb647ecb/consumer-secret +1 -0
- data/server/instances/31/notifications/7137ae72f6579c3d3228bb68bb647ecb/producer-secret +1 -0
- data/server/instances/{27/notifications/f43a34bc3d85f852bece416443f1a528 → 31/notifications/7137ae72f6579c3d3228bb68bb647ecb}/subscription.xml +0 -0
- data/server/instances/31/properties.xml +354 -0
- data/server/instances/6/properties.xml +170 -81
- data/server/server.pid +1 -1
- metadata +9 -5
- data/server/instances/27/notifications/f43a34bc3d85f852bece416443f1a528/consumer-secret +0 -1
- data/server/instances/27/notifications/f43a34bc3d85f852bece416443f1a528/producer-secret +0 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ba26baed827237368387cef1a332c786556e19ad
|
|
4
|
+
data.tar.gz: 043b528836d5e8fc2e21fcdc54f22ef4bcbcbd2f
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 584c2860805a2ab2192d9555fcd556f825736d8fc4061ed60aef17e0e7d6133e11a8c2f1f604cea9675e31a31fc59a8c149147157b7c5f7e1f8d8acb8a7d26f7
|
|
7
|
+
data.tar.gz: dd02f23944d101b2ccde6fd25a85731cc1e9944e3e3554dafb88cc2d88d04819419259206228c938a248b30d195565920a075ec0544eb46692aee0e24f8948c6
|
data/cockpit/js/instance.js
CHANGED
|
@@ -572,7 +572,7 @@ function save_testset() {// {{{
|
|
|
572
572
|
pars.find('uuid').remove();
|
|
573
573
|
testset.append(pars);
|
|
574
574
|
$('#savetestset').attr('download',name + '.xml');
|
|
575
|
-
$('#savetestset').attr('href','data:application/xml;charset=utf-8;base64,' +
|
|
575
|
+
$('#savetestset').attr('href','data:application/xml;charset=utf-8;base64,' + $B64(testset.serializePrettyXML()));
|
|
576
576
|
document.getElementById('savetestset').click();
|
|
577
577
|
},
|
|
578
578
|
error: report_failure
|
data/cockpit/js/wfadaptor.js
CHANGED
|
@@ -180,9 +180,8 @@ function WfIllustrator(wf_adaptor) { // View {{{
|
|
|
180
180
|
// }}}
|
|
181
181
|
// Helper Functions {{{
|
|
182
182
|
var draw_label = this.draw.draw_label = function (row, col, label, group, where) { // {{{
|
|
183
|
-
var g = $X('<text class="label" transform="translate(' + String((col*self.width)-((self.width*0.39))) + ',' + String(row*self.height+20-((self.height*0.74))) + ')" xmlns="http://www.w3.org/2000/svg">'
|
|
184
|
-
|
|
185
|
-
'</text>');
|
|
183
|
+
var g = $X('<text class="label" transform="translate(' + String((col*self.width)-((self.width*0.39))) + ',' + String(row*self.height+20-((self.height*0.74))) + ')" xmlns="http://www.w3.org/2000/svg"></text>');
|
|
184
|
+
g.text((label != '' ? '◤ ' : '') + label);
|
|
186
185
|
if(group) { group.find('g.element[element-id=' + where + ']').append(g); }
|
|
187
186
|
else {self.svg.container.children('g:first').append(g);}
|
|
188
187
|
return g;
|
|
@@ -199,7 +198,9 @@ function WfIllustrator(wf_adaptor) { // View {{{
|
|
|
199
198
|
'</g>' +
|
|
200
199
|
'</g>');
|
|
201
200
|
var sym = self.svg.defs[sym_name].clone();
|
|
202
|
-
|
|
201
|
+
var tit = $X('<title xmlns="http://www.w3.org/2000/svg"></title>');
|
|
202
|
+
tit.text(title);
|
|
203
|
+
sym.prepend(tit);
|
|
203
204
|
sym.attr('class','activities');
|
|
204
205
|
$(g[0].childNodes[0]).append(sym);
|
|
205
206
|
|
data/cpee.gemspec
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Gem::Specification.new do |s|
|
|
2
2
|
s.name = "cpee"
|
|
3
|
-
s.version = "1.3.
|
|
3
|
+
s.version = "1.3.216"
|
|
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). If you just need workflow execution, without a rest/xmpp service exposing it, then use WEEL"
|
data/lib/cpee/implementation.rb
CHANGED
|
@@ -66,7 +66,7 @@ module CPEE
|
|
|
66
66
|
controller = {}
|
|
67
67
|
Dir[opts[:instances] + '/*/properties.xml'].each do |e|
|
|
68
68
|
id = ::File::basename(::File::dirname(e))
|
|
69
|
-
(controller[id.to_i] = Controller.new(id,opts)) rescue nil
|
|
69
|
+
(controller[id.to_i] = (Controller.new(id,opts)) rescue nil)
|
|
70
70
|
end
|
|
71
71
|
|
|
72
72
|
interface 'properties' do |r|
|
|
@@ -157,9 +157,12 @@ module CPEE
|
|
|
157
157
|
|
|
158
158
|
while true
|
|
159
159
|
id += 1
|
|
160
|
-
Dir.
|
|
161
|
-
|
|
160
|
+
unless Dir.exists? opts[:instances] + "/#{id}"
|
|
161
|
+
Dir.mkdir(opts[:instances] + "/#{id}") rescue nil
|
|
162
|
+
break
|
|
163
|
+
end
|
|
162
164
|
end
|
|
165
|
+
|
|
163
166
|
controller[id] = Controller.new(id,opts)
|
|
164
167
|
info = controller[id].properties.data.find("/p:properties/p:attributes/p:info")
|
|
165
168
|
info.first.text = name if info.length == 1
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
<properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
|
|
2
|
+
<attributes>
|
|
3
|
+
<uuid>43593f10-b23f-4d59-b1a6-f2e26c4b2d7c</uuid>
|
|
4
|
+
<info>Enter info here</info>
|
|
5
|
+
<modeltype>CPEE</modeltype>
|
|
6
|
+
<theme>default</theme>
|
|
7
|
+
</attributes>
|
|
8
|
+
<state>ready</state>
|
|
9
|
+
<handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
|
|
10
|
+
<positions/>
|
|
11
|
+
<dataelements>
|
|
12
|
+
<persons>3</persons>
|
|
13
|
+
<card>Visa_12345</card>
|
|
14
|
+
<airline>null</airline>
|
|
15
|
+
<hotels>[]</hotels>
|
|
16
|
+
<from>Vienna</from>
|
|
17
|
+
<to>Prague</to>
|
|
18
|
+
<costs>0</costs>
|
|
19
|
+
</dataelements>
|
|
20
|
+
<endpoints>
|
|
21
|
+
<bookAir>http://gruppe.wst.univie.ac.at/~mangler/services/airline.php</bookAir>
|
|
22
|
+
<bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
|
|
23
|
+
<approve>http://gruppe.wst.univie.ac.at/~mangler/services/approval.php</approve>
|
|
24
|
+
</endpoints>
|
|
25
|
+
<dsl>call :a1, :bookAir, parameters: { :label => "Book Airline", :method => :post, :arguments => [⭐(:name => :from, :value => data.from), ⭐(:name => :to, :value => data.to), ⭐(:name => :persons, :value => data.persons)] }, finalize: <<-END
|
|
26
|
+
data.airline = result.value('id')
|
|
27
|
+
data.costs += result.value('costs').to_f
|
|
28
|
+
status.update 1, 'Hotel'
|
|
29
|
+
END
|
|
30
|
+
parallel do
|
|
31
|
+
loop pre_test{data.persons ≠ 0} do
|
|
32
|
+
parallel_branch data.persons do |p|
|
|
33
|
+
call :a2, :bookHotel, parameters: { :label => "Book Hotel", :method => :post, :arguments => [⭐(:name => :to, :value => data.to)] }, finalize: <<-END
|
|
34
|
+
data.hotels << result.value('id')
|
|
35
|
+
data.costs += result.value('costs').to_f
|
|
36
|
+
END
|
|
37
|
+
end
|
|
38
|
+
manipulate :a3, <<-END
|
|
39
|
+
data.persons -= 1
|
|
40
|
+
END
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
choose :inclusive do
|
|
44
|
+
alternative "data.costs > 700" do
|
|
45
|
+
call :a4, :approve, parameters: { :label => "Approve Hotel", :method => :post, :arguments => [⭐(:name => :costs, :value => data.costs)] }
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
</dsl>
|
|
49
|
+
<dslx>
|
|
50
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
|
51
|
+
<call id="a1" endpoint="bookAir">
|
|
52
|
+
<parameters>
|
|
53
|
+
<label>Book Airline</label>
|
|
54
|
+
<method>:post</method>
|
|
55
|
+
<arguments>
|
|
56
|
+
<from>data.from</from>
|
|
57
|
+
<to>data.to</to>
|
|
58
|
+
<persons>data.persons</persons>
|
|
59
|
+
</arguments>
|
|
60
|
+
</parameters>
|
|
61
|
+
<finalize output="result">data.airline = result.value('id')
|
|
62
|
+
data.costs += result.value('costs').to_f
|
|
63
|
+
status.update 1, 'Hotel'</finalize>
|
|
64
|
+
</call>
|
|
65
|
+
<parallel>
|
|
66
|
+
<loop mode="pre_test" condition="data.persons ≠ 0">
|
|
67
|
+
<parallel_branch pass="data.persons" local="p">
|
|
68
|
+
<call id="a2" endpoint="bookHotel">
|
|
69
|
+
<parameters>
|
|
70
|
+
<label>Book Hotel</label>
|
|
71
|
+
<method>:post</method>
|
|
72
|
+
<arguments>
|
|
73
|
+
<to>data.to</to>
|
|
74
|
+
</arguments>
|
|
75
|
+
</parameters>
|
|
76
|
+
<finalize output="result">data.hotels << result.value('id')
|
|
77
|
+
data.costs += result.value('costs').to_f</finalize>
|
|
78
|
+
</call>
|
|
79
|
+
</parallel_branch>
|
|
80
|
+
<manipulate id="a3">data.persons -= 1</manipulate>
|
|
81
|
+
</loop>
|
|
82
|
+
</parallel>
|
|
83
|
+
<choose mode="inclusive">
|
|
84
|
+
<alternative condition="data.costs > 700">
|
|
85
|
+
<call id="a4" endpoint="approve">
|
|
86
|
+
<parameters>
|
|
87
|
+
<label>Approve Hotel</label>
|
|
88
|
+
<method>:post</method>
|
|
89
|
+
<arguments>
|
|
90
|
+
<costs>data.costs</costs>
|
|
91
|
+
</arguments>
|
|
92
|
+
</parameters>
|
|
93
|
+
</call>
|
|
94
|
+
</alternative>
|
|
95
|
+
</choose>
|
|
96
|
+
</description>
|
|
97
|
+
</dslx>
|
|
98
|
+
<status>
|
|
99
|
+
<id>0</id>
|
|
100
|
+
<message>undefined</message>
|
|
101
|
+
</status>
|
|
102
|
+
<description>
|
|
103
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
|
104
|
+
<call id="a1" endpoint="bookAir">
|
|
105
|
+
<parameters>
|
|
106
|
+
<label>Book Airline</label>
|
|
107
|
+
<method>:post</method>
|
|
108
|
+
<arguments>
|
|
109
|
+
<from>data.from</from>
|
|
110
|
+
<to>data.to</to>
|
|
111
|
+
<persons>data.persons</persons>
|
|
112
|
+
</arguments>
|
|
113
|
+
</parameters>
|
|
114
|
+
<finalize output="result">data.airline = result.value('id')
|
|
115
|
+
data.costs += result.value('costs').to_f
|
|
116
|
+
status.update 1, 'Hotel'</finalize>
|
|
117
|
+
</call>
|
|
118
|
+
<parallel>
|
|
119
|
+
<loop mode="pre_test" condition="data.persons ≠ 0">
|
|
120
|
+
<parallel_branch pass="data.persons" local="p">
|
|
121
|
+
<call id="a2" endpoint="bookHotel">
|
|
122
|
+
<parameters>
|
|
123
|
+
<label>Book Hotel</label>
|
|
124
|
+
<method>:post</method>
|
|
125
|
+
<arguments>
|
|
126
|
+
<to>data.to</to>
|
|
127
|
+
</arguments>
|
|
128
|
+
</parameters>
|
|
129
|
+
<finalize output="result">data.hotels << result.value('id')
|
|
130
|
+
data.costs += result.value('costs').to_f</finalize>
|
|
131
|
+
</call>
|
|
132
|
+
</parallel_branch>
|
|
133
|
+
<manipulate id="a3">data.persons -= 1</manipulate>
|
|
134
|
+
</loop>
|
|
135
|
+
</parallel>
|
|
136
|
+
<choose mode="inclusive">
|
|
137
|
+
<alternative condition="data.costs > 700">
|
|
138
|
+
<call id="a4" endpoint="approve">
|
|
139
|
+
<parameters>
|
|
140
|
+
<label>Approve Hotel</label>
|
|
141
|
+
<method>:post</method>
|
|
142
|
+
<arguments>
|
|
143
|
+
<costs>data.costs</costs>
|
|
144
|
+
</arguments>
|
|
145
|
+
</parameters>
|
|
146
|
+
</call>
|
|
147
|
+
</alternative>
|
|
148
|
+
</choose>
|
|
149
|
+
</description>
|
|
150
|
+
</description>
|
|
151
|
+
<transformation>
|
|
152
|
+
<description type="copy"/>
|
|
153
|
+
<dataelements type="rest"/>
|
|
154
|
+
<endpoints type="rest"/>
|
|
155
|
+
</transformation>
|
|
156
|
+
</properties>
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
<properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
|
|
2
|
+
<attributes>
|
|
3
|
+
<uuid>39388ed2-c5d6-4a61-aa12-5e0cc535dda0</uuid>
|
|
4
|
+
<info>Enter info here</info>
|
|
5
|
+
<modeltype>CPEE</modeltype>
|
|
6
|
+
<theme>default</theme>
|
|
7
|
+
</attributes>
|
|
8
|
+
<state>ready</state>
|
|
9
|
+
<handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
|
|
10
|
+
<positions/>
|
|
11
|
+
<dataelements>
|
|
12
|
+
<persons>3</persons>
|
|
13
|
+
<card>Visa_12345</card>
|
|
14
|
+
<airline>null</airline>
|
|
15
|
+
<hotels>[]</hotels>
|
|
16
|
+
<from>Vienna</from>
|
|
17
|
+
<to>Prague</to>
|
|
18
|
+
<costs>0</costs>
|
|
19
|
+
</dataelements>
|
|
20
|
+
<endpoints>
|
|
21
|
+
<bookAir>http://gruppe.wst.univie.ac.at/~mangler/services/airline.php</bookAir>
|
|
22
|
+
<bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
|
|
23
|
+
<approve>http://gruppe.wst.univie.ac.at/~mangler/services/approval.php</approve>
|
|
24
|
+
</endpoints>
|
|
25
|
+
<dsl>call :a1, :bookAir, parameters: { :label => "Book Airline", :method => :post, :arguments => [⭐(:name => :from, :value => data.from), ⭐(:name => :to, :value => data.to), ⭐(:name => :persons, :value => data.persons)] }, finalize: <<-END
|
|
26
|
+
data.airline = result.value('id')
|
|
27
|
+
data.costs += result.value('costs').to_f
|
|
28
|
+
status.update 1, 'Hotel'
|
|
29
|
+
END
|
|
30
|
+
parallel do
|
|
31
|
+
loop pre_test{data.persons ≠ 0} do
|
|
32
|
+
parallel_branch data.persons do |p|
|
|
33
|
+
call :a2, :bookHotel, parameters: { :label => "Book Hotel", :method => :post, :arguments => [⭐(:name => :to, :value => data.to)] }, finalize: <<-END
|
|
34
|
+
data.hotels << result.value('id')
|
|
35
|
+
data.costs += result.value('costs').to_f
|
|
36
|
+
END
|
|
37
|
+
end
|
|
38
|
+
manipulate :a3, <<-END
|
|
39
|
+
data.persons -= 1
|
|
40
|
+
END
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
choose :inclusive do
|
|
44
|
+
alternative "data.costs > 700" do
|
|
45
|
+
call :a4, :approve, parameters: { :label => "Approve Hotel", :method => :post, :arguments => [⭐(:name => :costs, :value => data.costs)] }
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
</dsl>
|
|
49
|
+
<dslx>
|
|
50
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
|
51
|
+
<call id="a1" endpoint="bookAir">
|
|
52
|
+
<parameters>
|
|
53
|
+
<label>Book Airline</label>
|
|
54
|
+
<method>:post</method>
|
|
55
|
+
<arguments>
|
|
56
|
+
<from>data.from</from>
|
|
57
|
+
<to>data.to</to>
|
|
58
|
+
<persons>data.persons</persons>
|
|
59
|
+
</arguments>
|
|
60
|
+
</parameters>
|
|
61
|
+
<finalize output="result">data.airline = result.value('id')
|
|
62
|
+
data.costs += result.value('costs').to_f
|
|
63
|
+
status.update 1, 'Hotel'</finalize>
|
|
64
|
+
</call>
|
|
65
|
+
<parallel>
|
|
66
|
+
<loop mode="pre_test" condition="data.persons ≠ 0">
|
|
67
|
+
<parallel_branch pass="data.persons" local="p">
|
|
68
|
+
<call id="a2" endpoint="bookHotel">
|
|
69
|
+
<parameters>
|
|
70
|
+
<label>Book Hotel</label>
|
|
71
|
+
<method>:post</method>
|
|
72
|
+
<arguments>
|
|
73
|
+
<to>data.to</to>
|
|
74
|
+
</arguments>
|
|
75
|
+
</parameters>
|
|
76
|
+
<finalize output="result">data.hotels << result.value('id')
|
|
77
|
+
data.costs += result.value('costs').to_f</finalize>
|
|
78
|
+
</call>
|
|
79
|
+
</parallel_branch>
|
|
80
|
+
<manipulate id="a3">data.persons -= 1</manipulate>
|
|
81
|
+
</loop>
|
|
82
|
+
</parallel>
|
|
83
|
+
<choose mode="inclusive">
|
|
84
|
+
<alternative condition="data.costs > 700">
|
|
85
|
+
<call id="a4" endpoint="approve">
|
|
86
|
+
<parameters>
|
|
87
|
+
<label>Approve Hotel</label>
|
|
88
|
+
<method>:post</method>
|
|
89
|
+
<arguments>
|
|
90
|
+
<costs>data.costs</costs>
|
|
91
|
+
</arguments>
|
|
92
|
+
</parameters>
|
|
93
|
+
</call>
|
|
94
|
+
</alternative>
|
|
95
|
+
</choose>
|
|
96
|
+
</description>
|
|
97
|
+
</dslx>
|
|
98
|
+
<status>
|
|
99
|
+
<id>0</id>
|
|
100
|
+
<message>undefined</message>
|
|
101
|
+
</status>
|
|
102
|
+
<description>
|
|
103
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
|
104
|
+
<call id="a1" endpoint="bookAir">
|
|
105
|
+
<parameters>
|
|
106
|
+
<label>Book Airline</label>
|
|
107
|
+
<method>:post</method>
|
|
108
|
+
<arguments>
|
|
109
|
+
<from>data.from</from>
|
|
110
|
+
<to>data.to</to>
|
|
111
|
+
<persons>data.persons</persons>
|
|
112
|
+
</arguments>
|
|
113
|
+
</parameters>
|
|
114
|
+
<finalize output="result">data.airline = result.value('id')
|
|
115
|
+
data.costs += result.value('costs').to_f
|
|
116
|
+
status.update 1, 'Hotel'</finalize>
|
|
117
|
+
</call>
|
|
118
|
+
<parallel>
|
|
119
|
+
<loop mode="pre_test" condition="data.persons ≠ 0">
|
|
120
|
+
<parallel_branch pass="data.persons" local="p">
|
|
121
|
+
<call id="a2" endpoint="bookHotel">
|
|
122
|
+
<parameters>
|
|
123
|
+
<label>Book Hotel</label>
|
|
124
|
+
<method>:post</method>
|
|
125
|
+
<arguments>
|
|
126
|
+
<to>data.to</to>
|
|
127
|
+
</arguments>
|
|
128
|
+
</parameters>
|
|
129
|
+
<finalize output="result">data.hotels << result.value('id')
|
|
130
|
+
data.costs += result.value('costs').to_f</finalize>
|
|
131
|
+
</call>
|
|
132
|
+
</parallel_branch>
|
|
133
|
+
<manipulate id="a3">data.persons -= 1</manipulate>
|
|
134
|
+
</loop>
|
|
135
|
+
</parallel>
|
|
136
|
+
<choose mode="inclusive">
|
|
137
|
+
<alternative condition="data.costs > 700">
|
|
138
|
+
<call id="a4" endpoint="approve">
|
|
139
|
+
<parameters>
|
|
140
|
+
<label>Approve Hotel</label>
|
|
141
|
+
<method>:post</method>
|
|
142
|
+
<arguments>
|
|
143
|
+
<costs>data.costs</costs>
|
|
144
|
+
</arguments>
|
|
145
|
+
</parameters>
|
|
146
|
+
</call>
|
|
147
|
+
</alternative>
|
|
148
|
+
</choose>
|
|
149
|
+
</description>
|
|
150
|
+
</description>
|
|
151
|
+
<transformation>
|
|
152
|
+
<description type="copy"/>
|
|
153
|
+
<dataelements type="none"/>
|
|
154
|
+
<endpoints type="none"/>
|
|
155
|
+
</transformation>
|
|
156
|
+
</properties>
|
|
@@ -0,0 +1,354 @@
|
|
|
1
|
+
<properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
|
|
2
|
+
<attributes>
|
|
3
|
+
<uuid>55c9f9fe-d2eb-4494-a64c-f1bcbe459a55</uuid>
|
|
4
|
+
<info>a1200993</info>
|
|
5
|
+
<modeltype>Signavio</modeltype>
|
|
6
|
+
<theme>labels</theme>
|
|
7
|
+
</attributes>
|
|
8
|
+
<state>finished</state>
|
|
9
|
+
<handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
|
|
10
|
+
<positions/>
|
|
11
|
+
<dataelements>
|
|
12
|
+
<passportStatus>0</passportStatus>
|
|
13
|
+
<visaStatus>0</visaStatus>
|
|
14
|
+
<jobStatus>0</jobStatus>
|
|
15
|
+
<money>0</money>
|
|
16
|
+
<adress>null</adress>
|
|
17
|
+
</dataelements>
|
|
18
|
+
<endpoints>
|
|
19
|
+
<timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
|
|
20
|
+
</endpoints>
|
|
21
|
+
<dsl>call :a1, :timeout, parameters: { :label => "\"Save money for living expenses in Austria\"", :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
|
22
|
+
data.money=10000
|
|
23
|
+
END
|
|
24
|
+
call :a2, :timeout, parameters: { :label => "\"Check if passport still valid\"", :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
|
25
|
+
data.passportStatus=0
|
|
26
|
+
END
|
|
27
|
+
choose :exclusive do
|
|
28
|
+
alternative "data.passportStatus==0" do
|
|
29
|
+
call :a4, :timeout, parameters: { :label => "Renew passport", :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
|
30
|
+
data.passportStatus=1
|
|
31
|
+
data.money=data.money-60
|
|
32
|
+
END
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
call :a6, :timeout, parameters: { :label => "\"Check if visa is needed\"", :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
|
36
|
+
data.visaStatus=1
|
|
37
|
+
END
|
|
38
|
+
choose :exclusive do
|
|
39
|
+
alternative "data.passportStatus==1" do
|
|
40
|
+
call :a5, :timeout, parameters: { :label => "Apply for visa", :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
|
41
|
+
data.visaStatus=0
|
|
42
|
+
data.money=data.money-110
|
|
43
|
+
END
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
call :a10, :timeout, parameters: { :label => "\"Apply for \\"Rot-Weiß-Rot\\" card\"", :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
|
47
|
+
data.money=data.money-200
|
|
48
|
+
END
|
|
49
|
+
parallel :wait => -1 do
|
|
50
|
+
parallel_branch do
|
|
51
|
+
call :a12, :timeout, parameters: { :label => "\"Organise bank account\"", :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
|
52
|
+
data.money=data.money+100
|
|
53
|
+
END
|
|
54
|
+
end
|
|
55
|
+
parallel_branch do
|
|
56
|
+
call :a13, :timeout, parameters: { :label => "\"Organise accomodation\"", :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
|
57
|
+
data.adress="Sonnenallee 51/1/16"
|
|
58
|
+
END
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
call :a15, :timeout, parameters: { :label => "\"Enter Austria\"", :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
|
62
|
+
data.money=data.money-1000
|
|
63
|
+
data.jobStatus=1
|
|
64
|
+
END
|
|
65
|
+
loop pre_test{data.jobStatus==0} do
|
|
66
|
+
call :a3, :timeout, parameters: { :label => "Search for a job", :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
|
67
|
+
data.jobStatus=1
|
|
68
|
+
END
|
|
69
|
+
end
|
|
70
|
+
</dsl>
|
|
71
|
+
<dslx>
|
|
72
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
|
73
|
+
<call id="a1" endpoint="timeout">
|
|
74
|
+
<parameters>
|
|
75
|
+
<label>"Save money for living expenses in Austria"</label>
|
|
76
|
+
<method>:post</method>
|
|
77
|
+
<arguments>
|
|
78
|
+
<timeout>2</timeout>
|
|
79
|
+
</arguments>
|
|
80
|
+
</parameters>
|
|
81
|
+
<finalize output="result">data.money=10000
|
|
82
|
+
</finalize>
|
|
83
|
+
<update output="result"/>
|
|
84
|
+
</call>
|
|
85
|
+
<call id="a2" endpoint="timeout">
|
|
86
|
+
<parameters>
|
|
87
|
+
<label>"Check if passport still valid"</label>
|
|
88
|
+
<method>:post</method>
|
|
89
|
+
<arguments>
|
|
90
|
+
<timeout>2</timeout>
|
|
91
|
+
</arguments>
|
|
92
|
+
</parameters>
|
|
93
|
+
<finalize output="result">data.passportStatus=0
|
|
94
|
+
</finalize>
|
|
95
|
+
<update output="result"/>
|
|
96
|
+
</call>
|
|
97
|
+
<choose mode="exclusive">
|
|
98
|
+
<alternative condition="data.passportStatus==0">
|
|
99
|
+
<call id="a4" endpoint="timeout">
|
|
100
|
+
<parameters>
|
|
101
|
+
<label>Renew passport</label>
|
|
102
|
+
<method>:post</method>
|
|
103
|
+
<arguments>
|
|
104
|
+
<timeout>2</timeout>
|
|
105
|
+
</arguments>
|
|
106
|
+
</parameters>
|
|
107
|
+
<finalize output="result">data.passportStatus=1
|
|
108
|
+
data.money=data.money-60</finalize>
|
|
109
|
+
<update output="result"/>
|
|
110
|
+
</call>
|
|
111
|
+
</alternative>
|
|
112
|
+
<otherwise/>
|
|
113
|
+
</choose>
|
|
114
|
+
<call id="a6" endpoint="timeout">
|
|
115
|
+
<parameters>
|
|
116
|
+
<label>"Check if visa is needed"</label>
|
|
117
|
+
<method>:post</method>
|
|
118
|
+
<arguments>
|
|
119
|
+
<timeout>2</timeout>
|
|
120
|
+
</arguments>
|
|
121
|
+
</parameters>
|
|
122
|
+
<finalize output="result">data.visaStatus=1</finalize>
|
|
123
|
+
<update output="result"/>
|
|
124
|
+
</call>
|
|
125
|
+
<choose mode="exclusive">
|
|
126
|
+
<alternative condition="data.passportStatus==1">
|
|
127
|
+
<call id="a5" endpoint="timeout">
|
|
128
|
+
<parameters>
|
|
129
|
+
<label>Apply for visa</label>
|
|
130
|
+
<method>:post</method>
|
|
131
|
+
<arguments>
|
|
132
|
+
<timeout>2</timeout>
|
|
133
|
+
</arguments>
|
|
134
|
+
</parameters>
|
|
135
|
+
<finalize output="result">data.visaStatus=0
|
|
136
|
+
data.money=data.money-110</finalize>
|
|
137
|
+
<update output="result"/>
|
|
138
|
+
</call>
|
|
139
|
+
</alternative>
|
|
140
|
+
<otherwise/>
|
|
141
|
+
</choose>
|
|
142
|
+
<call id="a10" endpoint="timeout">
|
|
143
|
+
<parameters>
|
|
144
|
+
<label>"Apply for \"Rot-Weiß-Rot\" card"</label>
|
|
145
|
+
<method>:post</method>
|
|
146
|
+
<arguments>
|
|
147
|
+
<timeout>2</timeout>
|
|
148
|
+
</arguments>
|
|
149
|
+
</parameters>
|
|
150
|
+
<finalize output="result">data.money=data.money-200</finalize>
|
|
151
|
+
<update output="result"/>
|
|
152
|
+
</call>
|
|
153
|
+
<parallel wait="-1">
|
|
154
|
+
<parallel_branch>
|
|
155
|
+
<call id="a12" endpoint="timeout">
|
|
156
|
+
<parameters>
|
|
157
|
+
<label>"Organise bank account"</label>
|
|
158
|
+
<method>:post</method>
|
|
159
|
+
<arguments>
|
|
160
|
+
<timeout>2</timeout>
|
|
161
|
+
</arguments>
|
|
162
|
+
</parameters>
|
|
163
|
+
<finalize output="result">data.money=data.money+100</finalize>
|
|
164
|
+
<update output="result"/>
|
|
165
|
+
</call>
|
|
166
|
+
</parallel_branch>
|
|
167
|
+
<parallel_branch>
|
|
168
|
+
<call id="a13" endpoint="timeout">
|
|
169
|
+
<parameters>
|
|
170
|
+
<label>"Organise accomodation"</label>
|
|
171
|
+
<method>:post</method>
|
|
172
|
+
<arguments>
|
|
173
|
+
<timeout>2</timeout>
|
|
174
|
+
</arguments>
|
|
175
|
+
</parameters>
|
|
176
|
+
<finalize output="result">data.adress="Sonnenallee 51/1/16"</finalize>
|
|
177
|
+
<update output="result"/>
|
|
178
|
+
</call>
|
|
179
|
+
</parallel_branch>
|
|
180
|
+
</parallel>
|
|
181
|
+
<call id="a15" endpoint="timeout">
|
|
182
|
+
<parameters>
|
|
183
|
+
<label>"Enter Austria"</label>
|
|
184
|
+
<method>:post</method>
|
|
185
|
+
<arguments>
|
|
186
|
+
<timeout>2</timeout>
|
|
187
|
+
</arguments>
|
|
188
|
+
</parameters>
|
|
189
|
+
<finalize output="result">data.money=data.money-1000
|
|
190
|
+
data.jobStatus=1</finalize>
|
|
191
|
+
<update output="result"/>
|
|
192
|
+
</call>
|
|
193
|
+
<loop mode="pre_test" condition="data.jobStatus==0">
|
|
194
|
+
<call id="a3" endpoint="timeout">
|
|
195
|
+
<parameters>
|
|
196
|
+
<label>Search for a job</label>
|
|
197
|
+
<method>:post</method>
|
|
198
|
+
<arguments>
|
|
199
|
+
<timeout>2</timeout>
|
|
200
|
+
</arguments>
|
|
201
|
+
</parameters>
|
|
202
|
+
<finalize output="result">data.jobStatus=1</finalize>
|
|
203
|
+
<update output="result"/>
|
|
204
|
+
</call>
|
|
205
|
+
</loop>
|
|
206
|
+
</description>
|
|
207
|
+
</dslx>
|
|
208
|
+
<status>
|
|
209
|
+
<id>0</id>
|
|
210
|
+
<message>undefined</message>
|
|
211
|
+
</status>
|
|
212
|
+
<description>
|
|
213
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
|
214
|
+
<call id="a1" endpoint="timeout">
|
|
215
|
+
<parameters>
|
|
216
|
+
<label>"Save money for living expenses in Austria"</label>
|
|
217
|
+
<method>:post</method>
|
|
218
|
+
<arguments>
|
|
219
|
+
<timeout>2</timeout>
|
|
220
|
+
</arguments>
|
|
221
|
+
</parameters>
|
|
222
|
+
<finalize output="result">data.money=10000
|
|
223
|
+
</finalize>
|
|
224
|
+
<update output="result"/>
|
|
225
|
+
</call>
|
|
226
|
+
<call id="a2" endpoint="timeout">
|
|
227
|
+
<parameters>
|
|
228
|
+
<label>"Check if passport still valid"</label>
|
|
229
|
+
<method>:post</method>
|
|
230
|
+
<arguments>
|
|
231
|
+
<timeout>2</timeout>
|
|
232
|
+
</arguments>
|
|
233
|
+
</parameters>
|
|
234
|
+
<finalize output="result">data.passportStatus=0
|
|
235
|
+
</finalize>
|
|
236
|
+
<update output="result"/>
|
|
237
|
+
</call>
|
|
238
|
+
<choose mode="exclusive">
|
|
239
|
+
<alternative condition="data.passportStatus==0">
|
|
240
|
+
<call id="a4" endpoint="timeout">
|
|
241
|
+
<parameters>
|
|
242
|
+
<label>Renew passport</label>
|
|
243
|
+
<method>:post</method>
|
|
244
|
+
<arguments>
|
|
245
|
+
<timeout>2</timeout>
|
|
246
|
+
</arguments>
|
|
247
|
+
</parameters>
|
|
248
|
+
<finalize output="result">data.passportStatus=1
|
|
249
|
+
data.money=data.money-60</finalize>
|
|
250
|
+
<update output="result"/>
|
|
251
|
+
</call>
|
|
252
|
+
</alternative>
|
|
253
|
+
<otherwise/>
|
|
254
|
+
</choose>
|
|
255
|
+
<call id="a6" endpoint="timeout">
|
|
256
|
+
<parameters>
|
|
257
|
+
<label>"Check if visa is needed"</label>
|
|
258
|
+
<method>:post</method>
|
|
259
|
+
<arguments>
|
|
260
|
+
<timeout>2</timeout>
|
|
261
|
+
</arguments>
|
|
262
|
+
</parameters>
|
|
263
|
+
<finalize output="result">data.visaStatus=1</finalize>
|
|
264
|
+
<update output="result"/>
|
|
265
|
+
</call>
|
|
266
|
+
<choose mode="exclusive">
|
|
267
|
+
<alternative condition="data.passportStatus==1">
|
|
268
|
+
<call id="a5" endpoint="timeout">
|
|
269
|
+
<parameters>
|
|
270
|
+
<label>Apply for visa</label>
|
|
271
|
+
<method>:post</method>
|
|
272
|
+
<arguments>
|
|
273
|
+
<timeout>2</timeout>
|
|
274
|
+
</arguments>
|
|
275
|
+
</parameters>
|
|
276
|
+
<finalize output="result">data.visaStatus=0
|
|
277
|
+
data.money=data.money-110</finalize>
|
|
278
|
+
<update output="result"/>
|
|
279
|
+
</call>
|
|
280
|
+
</alternative>
|
|
281
|
+
<otherwise/>
|
|
282
|
+
</choose>
|
|
283
|
+
<call id="a10" endpoint="timeout">
|
|
284
|
+
<parameters>
|
|
285
|
+
<label>"Apply for \"Rot-Weiß-Rot\" card"</label>
|
|
286
|
+
<method>:post</method>
|
|
287
|
+
<arguments>
|
|
288
|
+
<timeout>2</timeout>
|
|
289
|
+
</arguments>
|
|
290
|
+
</parameters>
|
|
291
|
+
<finalize output="result">data.money=data.money-200</finalize>
|
|
292
|
+
<update output="result"/>
|
|
293
|
+
</call>
|
|
294
|
+
<parallel wait="-1">
|
|
295
|
+
<parallel_branch>
|
|
296
|
+
<call id="a12" endpoint="timeout">
|
|
297
|
+
<parameters>
|
|
298
|
+
<label>"Organise bank account"</label>
|
|
299
|
+
<method>:post</method>
|
|
300
|
+
<arguments>
|
|
301
|
+
<timeout>2</timeout>
|
|
302
|
+
</arguments>
|
|
303
|
+
</parameters>
|
|
304
|
+
<finalize output="result">data.money=data.money+100</finalize>
|
|
305
|
+
<update output="result"/>
|
|
306
|
+
</call>
|
|
307
|
+
</parallel_branch>
|
|
308
|
+
<parallel_branch>
|
|
309
|
+
<call id="a13" endpoint="timeout">
|
|
310
|
+
<parameters>
|
|
311
|
+
<label>"Organise accomodation"</label>
|
|
312
|
+
<method>:post</method>
|
|
313
|
+
<arguments>
|
|
314
|
+
<timeout>2</timeout>
|
|
315
|
+
</arguments>
|
|
316
|
+
</parameters>
|
|
317
|
+
<finalize output="result">data.adress="Sonnenallee 51/1/16"</finalize>
|
|
318
|
+
<update output="result"/>
|
|
319
|
+
</call>
|
|
320
|
+
</parallel_branch>
|
|
321
|
+
</parallel>
|
|
322
|
+
<call id="a15" endpoint="timeout">
|
|
323
|
+
<parameters>
|
|
324
|
+
<label>"Enter Austria"</label>
|
|
325
|
+
<method>:post</method>
|
|
326
|
+
<arguments>
|
|
327
|
+
<timeout>2</timeout>
|
|
328
|
+
</arguments>
|
|
329
|
+
</parameters>
|
|
330
|
+
<finalize output="result">data.money=data.money-1000
|
|
331
|
+
data.jobStatus=1</finalize>
|
|
332
|
+
<update output="result"/>
|
|
333
|
+
</call>
|
|
334
|
+
<loop mode="pre_test" condition="data.jobStatus==0">
|
|
335
|
+
<call id="a3" endpoint="timeout">
|
|
336
|
+
<parameters>
|
|
337
|
+
<label>Search for a job</label>
|
|
338
|
+
<method>:post</method>
|
|
339
|
+
<arguments>
|
|
340
|
+
<timeout>2</timeout>
|
|
341
|
+
</arguments>
|
|
342
|
+
</parameters>
|
|
343
|
+
<finalize output="result">data.jobStatus=1</finalize>
|
|
344
|
+
<update output="result"/>
|
|
345
|
+
</call>
|
|
346
|
+
</loop>
|
|
347
|
+
</description>
|
|
348
|
+
</description>
|
|
349
|
+
<transformation>
|
|
350
|
+
<description type="copy"/>
|
|
351
|
+
<dataelements type="none"/>
|
|
352
|
+
<endpoints type="none"/>
|
|
353
|
+
</transformation>
|
|
354
|
+
</properties>
|