cpee 1.3.157 → 1.3.158

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.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/cpee.gemspec +1 -1
  3. data/server/instances/1/notifications/d12eff1ac812661c05d7090ce7394cf9/consumer-secret +1 -0
  4. data/server/instances/1/notifications/d12eff1ac812661c05d7090ce7394cf9/producer-secret +1 -0
  5. data/server/instances/{12/notifications/b0a0abbb8ad6fb81c579c4e97829d681 → 1/notifications/d12eff1ac812661c05d7090ce7394cf9}/subscription.xml +0 -0
  6. data/server/instances/1/properties.xml +69 -101
  7. data/server/instances/10/properties.xml +106 -70
  8. data/server/instances/11/notifications/e0910b6b5536976209bca471780066f1/consumer-secret +1 -0
  9. data/server/instances/11/notifications/e0910b6b5536976209bca471780066f1/producer-secret +1 -0
  10. data/server/instances/11/notifications/e0910b6b5536976209bca471780066f1/subscription.xml +27 -0
  11. data/server/instances/11/properties.xml +133 -73
  12. data/server/instances/2/properties.xml +191 -44
  13. data/server/instances/3/properties.xml +70 -44
  14. data/server/instances/4/properties.xml +28 -68
  15. data/server/instances/5/properties.xml +10 -70
  16. data/server/instances/6/properties.xml +175 -55
  17. data/server/instances/7/properties.xml +118 -52
  18. data/server/instances/8/properties.xml +112 -50
  19. data/server/instances/9/properties.xml +115 -47
  20. data/server/resources/properties.init +1 -0
  21. data/server/resources/properties.schema.active +5 -0
  22. data/server/resources/properties.schema.finished +5 -0
  23. data/server/resources/properties.schema.inactive +5 -0
  24. metadata +105 -106
  25. data/server/instances/12/notifications/8d7f2ae546a742fce3a0a488266ea51d/consumer-secret +0 -1
  26. data/server/instances/12/notifications/8d7f2ae546a742fce3a0a488266ea51d/producer-secret +0 -1
  27. data/server/instances/12/notifications/8d7f2ae546a742fce3a0a488266ea51d/subscription.xml +0 -6
  28. data/server/instances/12/notifications/b0a0abbb8ad6fb81c579c4e97829d681/consumer-secret +0 -1
  29. data/server/instances/12/notifications/b0a0abbb8ad6fb81c579c4e97829d681/producer-secret +0 -1
  30. data/server/instances/12/properties.xml +0 -43
@@ -1,51 +1,93 @@
1
1
  <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
2
- <info>Enter info here</info>
3
- <state>finished</state>
2
+ <info>sdff</info>
3
+ <state>stopped</state>
4
4
  <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
5
- <positions/>
5
+ <positions>
6
+ <a1>after</a1>
7
+ </positions>
6
8
  <dataelements>
7
- <json>{"lv":"Workflow Technologies","id":{"lvnr":"050311","gruppe":1}}</json>
8
- <json_lv>Workflow Technologies</json_lv>
9
- <json_lvnr/>
10
- <xml_lv>Workflow Technologies</xml_lv>
11
- <xml_lvnr>050311</xml_lvnr>
9
+ <persons>0</persons>
10
+ <card>Visa_12345</card>
11
+ <airline>Lufthansa</airline>
12
+ <hotels>["Mariott","Ibis","Ibis"]</hotels>
13
+ <from>Vienna</from>
14
+ <to>Prague</to>
15
+ <costs>1936.0</costs>
12
16
  </dataelements>
13
17
  <endpoints>
14
- <timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
15
- <json>http://cpee.org/services/json.php</json>
16
- <xml>http://cpee.org/services/xml.php</xml>
18
+ <bookAir>http://gruppe.wst.univie.ac.at/~mangler/services/airline.php</bookAir>
19
+ <bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
20
+ <approve>http://gruppe.wst.univie.ac.at/~mangler/services/approval.php</approve>
17
21
  </endpoints>
18
- <dsl>call :a1, :json, { :label =&gt; "Get JSON", :method =&gt; "get", :parameters =&gt; nil }, &lt;&lt;-end
19
- data.json = result
20
- data.json_lv = result['lv']
21
- data.json_lvnr = result['lv']['lvnr']
22
+ <dsl>call :a1, :bookAir, { :label =&gt; "blaa", :method =&gt; :post, :parameters =&gt; {:from =&gt; data.from, :to =&gt; data.to, :persons =&gt; data.persons} }, &lt;&lt;-end
23
+ data.airline = result.value('id')
24
+ data.costs += result.value('costs').to_f
25
+ status.update 1, 'Hotel'
22
26
  end
23
- call :a2, :xml, { :label =&gt; "Get XML", :method =&gt; "get", :parameters =&gt; nil }, &lt;&lt;-end
24
- data.xml_lv = result.find('string(/data/lv)')
25
- data.xml_lvnr = result.find('string(/data/lv/@id)')
27
+ parallel do
28
+ loop pre_test{data.persons &gt; 0} do
29
+ parallel_branch data.persons do |p|
30
+ call :a2, :bookHotel, { :method =&gt; :post, :parameters =&gt; {:to =&gt; data.to} }, &lt;&lt;-end
31
+ data.hotels &lt;&lt; result.value('id')
32
+ data.costs += result.value('costs').to_f
33
+ end
34
+ end
35
+ manipulate :a3, &lt;&lt;-end
36
+ data.persons -= 1
37
+ end
38
+ end
39
+ end
40
+ choose :inclusive do
41
+ alternative "data.costs &gt; 700" do
42
+ call :a4, :approve, { :method =&gt; :post, :parameters =&gt; {:costs =&gt; data.costs} }
43
+ end
26
44
  end
27
45
  </dsl>
28
46
  <dslx>
29
47
  <description xmlns="http://cpee.org/ns/description/1.0">
30
- <call id="a1" endpoint="json" svg-label="Get JSON">
31
- <parameters>
32
- <label>Get JSON</label>
33
- <method>get</method>
34
- <parameters/>
35
- </parameters>
36
- <manipulate>data.json = result
37
- data.json_lv = result['lv']
38
- data.json_lvnr = result['lv']['lvnr']</manipulate>
39
- </call>
40
- <call id="a2" endpoint="xml">
48
+ <call id="a1" endpoint="bookAir">
41
49
  <parameters>
42
- <label>Get XML</label>
43
- <method>get</method>
44
- <parameters/>
50
+ <label>"blaa"</label>
51
+ <method>:post</method>
52
+ <parameters>
53
+ <from>data.from</from>
54
+ <to>data.to</to>
55
+ <persons>data.persons</persons>
56
+ </parameters>
45
57
  </parameters>
46
- <manipulate>data.xml_lv = result.find('string(/data/lv)')
47
- data.xml_lvnr = result.find('string(/data/lv/@id)')</manipulate>
58
+ <manipulate>data.airline = result.value('id')
59
+ data.costs += result.value('costs').to_f
60
+ status.update 1, 'Hotel'</manipulate>
48
61
  </call>
62
+ <parallel svg-label="">
63
+ <loop pre_test="data.persons &gt; 0" svg-label="">
64
+ <parallel_branch pass="data.persons" local="p" svg-label="">
65
+ <call id="a2" endpoint="bookHotel" svg-label="">
66
+ <parameters>
67
+ <method>:post</method>
68
+ <parameters>
69
+ <to>data.to</to>
70
+ </parameters>
71
+ </parameters>
72
+ <manipulate output="result"> data.hotels &lt;&lt; result.value('id')
73
+ data.costs += result.value('costs').to_f</manipulate>
74
+ </call>
75
+ </parallel_branch>
76
+ <manipulate id="a3" svg-label=""> data.persons -= 1</manipulate>
77
+ </loop>
78
+ </parallel>
79
+ <choose svg-label="">
80
+ <alternative condition="data.costs &gt; 700" svg-label="">
81
+ <call id="a4" endpoint="approve" svg-label="">
82
+ <parameters>
83
+ <method>:post</method>
84
+ <parameters>
85
+ <costs>data.costs</costs>
86
+ </parameters>
87
+ </parameters>
88
+ </call>
89
+ </alternative>
90
+ </choose>
49
91
  </description>
50
92
  </dslx>
51
93
  <status>
@@ -54,30 +96,54 @@ data.xml_lvnr = result.find('string(/data/lv/@id)')</manipulate>
54
96
  </status>
55
97
  <description>
56
98
  <description xmlns="http://cpee.org/ns/description/1.0">
57
- <call id="a1" endpoint="json" svg-label="Get JSON">
58
- <parameters>
59
- <label>Get JSON</label>
60
- <method>get</method>
61
- <parameters/>
62
- </parameters>
63
- <manipulate>data.json = result
64
- data.json_lv = result['lv']
65
- data.json_lvnr = result['lv']['lvnr']</manipulate>
66
- </call>
67
- <call id="a2" endpoint="xml">
99
+ <call id="a1" endpoint="bookAir">
68
100
  <parameters>
69
- <label>Get XML</label>
70
- <method>get</method>
71
- <parameters/>
101
+ <label>"blaa"</label>
102
+ <method>:post</method>
103
+ <parameters>
104
+ <from>data.from</from>
105
+ <to>data.to</to>
106
+ <persons>data.persons</persons>
107
+ </parameters>
72
108
  </parameters>
73
- <manipulate>data.xml_lv = result.find('string(/data/lv)')
74
- data.xml_lvnr = result.find('string(/data/lv/@id)')</manipulate>
109
+ <manipulate>data.airline = result.value('id')
110
+ data.costs += result.value('costs').to_f
111
+ status.update 1, 'Hotel'</manipulate>
75
112
  </call>
113
+ <parallel svg-label="">
114
+ <loop pre_test="data.persons &gt; 0" svg-label="">
115
+ <parallel_branch pass="data.persons" local="p" svg-label="">
116
+ <call id="a2" endpoint="bookHotel" svg-label="">
117
+ <parameters>
118
+ <method>:post</method>
119
+ <parameters>
120
+ <to>data.to</to>
121
+ </parameters>
122
+ </parameters>
123
+ <manipulate output="result"> data.hotels &lt;&lt; result.value('id')
124
+ data.costs += result.value('costs').to_f</manipulate>
125
+ </call>
126
+ </parallel_branch>
127
+ <manipulate id="a3" svg-label=""> data.persons -= 1</manipulate>
128
+ </loop>
129
+ </parallel>
130
+ <choose svg-label="">
131
+ <alternative condition="data.costs &gt; 700" svg-label="">
132
+ <call id="a4" endpoint="approve" svg-label="">
133
+ <parameters>
134
+ <method>:post</method>
135
+ <parameters>
136
+ <costs>data.costs</costs>
137
+ </parameters>
138
+ </parameters>
139
+ </call>
140
+ </alternative>
141
+ </choose>
76
142
  </description>
77
143
  </description>
78
144
  <transformation>
79
145
  <description type="copy"/>
80
- <dataelements type="xslt"/>
81
- <endpoints type="xslt"/>
146
+ <dataelements type="rest"/>
147
+ <endpoints type="rest"/>
82
148
  </transformation>
83
149
  </properties>
@@ -1,51 +1,90 @@
1
1
  <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
2
2
  <info>Enter info here</info>
3
- <state>finished</state>
3
+ <state>stopped</state>
4
4
  <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
5
5
  <positions/>
6
6
  <dataelements>
7
- <json>{"lv":"Workflow Technologies","id":{"lvnr":"050311","gruppe":1}}</json>
8
- <json_lv>Workflow Technologies</json_lv>
9
- <json_lvnr/>
10
- <xml_lv>Workflow Technologies</xml_lv>
11
- <xml_lvnr>050311</xml_lvnr>
7
+ <persons>0</persons>
8
+ <card>Visa_12345</card>
9
+ <airline>FlyNiki</airline>
10
+ <hotels>["Mariott","Rathaus","Mariott"]</hotels>
11
+ <from>Vienna</from>
12
+ <to>Prague</to>
13
+ <costs>1021.0</costs>
12
14
  </dataelements>
13
15
  <endpoints>
14
- <timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
15
- <json>http://cpee.org/services/json.php</json>
16
- <xml>http://cpee.org/services/xml.php</xml>
16
+ <bookAir>http://gruppe.wst.univie.ac.at/~mangler/services/airline.php</bookAir>
17
+ <bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
18
+ <approve>http://gruppe.wst.univie.ac.at/~mangler/services/approval.php</approve>
17
19
  </endpoints>
18
- <dsl>call :a1, :json, { :label =&gt; "Get JSON", :method =&gt; "get", :parameters =&gt; nil }, &lt;&lt;-end
19
- data.json = result
20
- data.json_lv = result['lv']
21
- data.json_lvnr = result['lv']['lvnr']
20
+ <dsl>call :a1, :bookAir, { :method =&gt; :post, :parameters =&gt; {:from =&gt; data.from, :to =&gt; data.to, :persons =&gt; data.persons} }, &lt;&lt;-end
21
+ data.airline = result.value('id')
22
+ data.costs += result.value('costs').to_f
23
+ status.update 1, 'Hotel'
22
24
  end
23
- call :a2, :xml, { :label =&gt; "Get XML", :method =&gt; "get", :parameters =&gt; nil }, &lt;&lt;-end
24
- data.xml_lv = result.find('string(/data/lv)')
25
- data.xml_lvnr = result.find('string(/data/lv/@id)')
25
+ parallel do
26
+ loop pre_test{data.persons &gt; 0} do
27
+ parallel_branch data.persons do |p|
28
+ call :a2, :bookHotel, { :method =&gt; :post, :parameters =&gt; {:to =&gt; data.to} }, &lt;&lt;-end
29
+ data.hotels &lt;&lt; result.value('id')
30
+ data.costs += result.value('costs').to_f
31
+ end
32
+ end
33
+ manipulate :a3, &lt;&lt;-end
34
+ data.persons -= 1
35
+ end
36
+ end
37
+ end
38
+ choose :inclusive do
39
+ alternative "data.costs &gt; 700" do
40
+ call :a4, :approve, { :method =&gt; :post, :parameters =&gt; {:costs =&gt; data.costs} }
41
+ end
26
42
  end
27
43
  </dsl>
28
44
  <dslx>
29
45
  <description xmlns="http://cpee.org/ns/description/1.0">
30
- <call id="a1" endpoint="json" svg-label="Get JSON">
31
- <parameters>
32
- <label>Get JSON</label>
33
- <method>get</method>
34
- <parameters/>
35
- </parameters>
36
- <manipulate>data.json = result
37
- data.json_lv = result['lv']
38
- data.json_lvnr = result['lv']['lvnr']</manipulate>
39
- </call>
40
- <call id="a2" endpoint="xml">
46
+ <call id="a1" endpoint="bookAir">
41
47
  <parameters>
42
- <label>Get XML</label>
43
- <method>get</method>
44
- <parameters/>
48
+ <method>:post</method>
49
+ <parameters>
50
+ <from>data.from</from>
51
+ <to>data.to</to>
52
+ <persons>data.persons</persons>
53
+ </parameters>
45
54
  </parameters>
46
- <manipulate>data.xml_lv = result.find('string(/data/lv)')
47
- data.xml_lvnr = result.find('string(/data/lv/@id)')</manipulate>
55
+ <manipulate output="result"> data.airline = result.value('id')
56
+ data.costs += result.value('costs').to_f
57
+ status.update 1, 'Hotel'</manipulate>
48
58
  </call>
59
+ <parallel>
60
+ <loop pre_test="data.persons &gt; 0">
61
+ <parallel_branch pass="data.persons" local="p">
62
+ <call id="a2" endpoint="bookHotel">
63
+ <parameters>
64
+ <method>:post</method>
65
+ <parameters>
66
+ <to>data.to</to>
67
+ </parameters>
68
+ </parameters>
69
+ <manipulate output="result"> data.hotels &lt;&lt; result.value('id')
70
+ data.costs += result.value('costs').to_f</manipulate>
71
+ </call>
72
+ </parallel_branch>
73
+ <manipulate id="a3"> data.persons -= 1</manipulate>
74
+ </loop>
75
+ </parallel>
76
+ <choose>
77
+ <alternative condition="data.costs &gt; 700">
78
+ <call id="a4" endpoint="approve">
79
+ <parameters>
80
+ <method>:post</method>
81
+ <parameters>
82
+ <costs>data.costs</costs>
83
+ </parameters>
84
+ </parameters>
85
+ </call>
86
+ </alternative>
87
+ </choose>
49
88
  </description>
50
89
  </dslx>
51
90
  <status>
@@ -54,30 +93,53 @@ data.xml_lvnr = result.find('string(/data/lv/@id)')</manipulate>
54
93
  </status>
55
94
  <description>
56
95
  <description xmlns="http://cpee.org/ns/description/1.0">
57
- <call id="a1" endpoint="json" svg-label="Get JSON">
58
- <parameters>
59
- <label>Get JSON</label>
60
- <method>get</method>
61
- <parameters/>
62
- </parameters>
63
- <manipulate>data.json = result
64
- data.json_lv = result['lv']
65
- data.json_lvnr = result['lv']['lvnr']</manipulate>
66
- </call>
67
- <call id="a2" endpoint="xml">
96
+ <call id="a1" endpoint="bookAir">
68
97
  <parameters>
69
- <label>Get XML</label>
70
- <method>get</method>
71
- <parameters/>
98
+ <method>:post</method>
99
+ <parameters>
100
+ <from>data.from</from>
101
+ <to>data.to</to>
102
+ <persons>data.persons</persons>
103
+ </parameters>
72
104
  </parameters>
73
- <manipulate>data.xml_lv = result.find('string(/data/lv)')
74
- data.xml_lvnr = result.find('string(/data/lv/@id)')</manipulate>
105
+ <manipulate output="result"> data.airline = result.value('id')
106
+ data.costs += result.value('costs').to_f
107
+ status.update 1, 'Hotel'</manipulate>
75
108
  </call>
109
+ <parallel>
110
+ <loop pre_test="data.persons &gt; 0">
111
+ <parallel_branch pass="data.persons" local="p">
112
+ <call id="a2" endpoint="bookHotel">
113
+ <parameters>
114
+ <method>:post</method>
115
+ <parameters>
116
+ <to>data.to</to>
117
+ </parameters>
118
+ </parameters>
119
+ <manipulate output="result"> data.hotels &lt;&lt; result.value('id')
120
+ data.costs += result.value('costs').to_f</manipulate>
121
+ </call>
122
+ </parallel_branch>
123
+ <manipulate id="a3"> data.persons -= 1</manipulate>
124
+ </loop>
125
+ </parallel>
126
+ <choose>
127
+ <alternative condition="data.costs &gt; 700">
128
+ <call id="a4" endpoint="approve">
129
+ <parameters>
130
+ <method>:post</method>
131
+ <parameters>
132
+ <costs>data.costs</costs>
133
+ </parameters>
134
+ </parameters>
135
+ </call>
136
+ </alternative>
137
+ </choose>
76
138
  </description>
77
139
  </description>
78
140
  <transformation>
79
141
  <description type="copy"/>
80
- <dataelements type="xslt"/>
81
- <endpoints type="xslt"/>
142
+ <dataelements type="rest"/>
143
+ <endpoints type="rest"/>
82
144
  </transformation>
83
145
  </properties>
@@ -1,45 +1,90 @@
1
1
  <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
2
- <info>Enter info here</info>
3
- <state>ready</state>
2
+ <info>asd</info>
3
+ <state>stopped</state>
4
4
  <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
5
5
  <positions/>
6
- <dataelements/>
6
+ <dataelements>
7
+ <persons>0</persons>
8
+ <card>Visa_12345</card>
9
+ <airline>FlyNiki</airline>
10
+ <hotels>["Ibis","Mariott","Rathaus"]</hotels>
11
+ <from>Vienna</from>
12
+ <to>Prague</to>
13
+ <costs>724.0</costs>
14
+ </dataelements>
7
15
  <endpoints>
8
- <timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
9
- <json>http://cpee.org/services/json.php</json>
10
- <xml>http://cpee.org/services/xml.php</xml>
16
+ <bookAir>http://gruppe.wst.univie.ac.at/~mangler/services/airline.php</bookAir>
17
+ <bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
18
+ <approve>http://gruppe.wst.univie.ac.at/~mangler/services/approval.php</approve>
11
19
  </endpoints>
12
- <dsl>call :a1, :json, { :label =&gt; "Get JSON", :method =&gt; "get", :parameters =&gt; nil }, &lt;&lt;-end
13
- data.json = result
14
- data.json_lv = result['lv']
15
- data.json_lvnr = result['lv']['lvnr']
20
+ <dsl>call :a1, :bookAir, { :method =&gt; :post, :parameters =&gt; {:from =&gt; data.from, :to =&gt; data.to, :persons =&gt; data.persons} }, &lt;&lt;-end
21
+ data.airline = result.value('id')
22
+ data.costs += result.value('costs').to_f
23
+ status.update 1, 'Hotel'
16
24
  end
17
- call :a2, :xml, { :label =&gt; "Get XML", :method =&gt; "get", :parameters =&gt; nil }, &lt;&lt;-end
18
- data.xml_lv = result.find('string(/data/lv)')
19
- data.xml_lvnr = result.find('string(/data/lv/@id)')
25
+ parallel do
26
+ loop pre_test{data.persons &gt; 0} do
27
+ parallel_branch data.persons do |p|
28
+ call :a2, :bookHotel, { :method =&gt; :post, :parameters =&gt; {:to =&gt; data.to} }, &lt;&lt;-end
29
+ data.hotels &lt;&lt; result.value('id')
30
+ data.costs += result.value('costs').to_f
31
+ end
32
+ end
33
+ manipulate :a3, &lt;&lt;-end
34
+ data.persons -= 1
35
+ end
36
+ end
37
+ end
38
+ choose :inclusive do
39
+ alternative "data.costs &gt; 700" do
40
+ call :a4, :approve, { :method =&gt; :post, :parameters =&gt; {:costs =&gt; data.costs} }
41
+ end
20
42
  end
21
43
  </dsl>
22
44
  <dslx>
23
45
  <description xmlns="http://cpee.org/ns/description/1.0">
24
- <call id="a1" endpoint="json" svg-label="Get JSON">
25
- <parameters>
26
- <label>Get JSON</label>
27
- <method>get</method>
28
- <parameters/>
29
- </parameters>
30
- <manipulate>data.json = result
31
- data.json_lv = result['lv']
32
- data.json_lvnr = result['lv']['lvnr']</manipulate>
33
- </call>
34
- <call id="a2" endpoint="xml">
46
+ <call id="a1" endpoint="bookAir">
35
47
  <parameters>
36
- <label>Get XML</label>
37
- <method>get</method>
38
- <parameters/>
48
+ <method>:post</method>
49
+ <parameters>
50
+ <from>data.from</from>
51
+ <to>data.to</to>
52
+ <persons>data.persons</persons>
53
+ </parameters>
39
54
  </parameters>
40
- <manipulate>data.xml_lv = result.find('string(/data/lv)')
41
- data.xml_lvnr = result.find('string(/data/lv/@id)')</manipulate>
55
+ <manipulate output="result"> data.airline = result.value('id')
56
+ data.costs += result.value('costs').to_f
57
+ status.update 1, 'Hotel'</manipulate>
42
58
  </call>
59
+ <parallel>
60
+ <loop pre_test="data.persons &gt; 0">
61
+ <parallel_branch pass="data.persons" local="p">
62
+ <call id="a2" endpoint="bookHotel">
63
+ <parameters>
64
+ <method>:post</method>
65
+ <parameters>
66
+ <to>data.to</to>
67
+ </parameters>
68
+ </parameters>
69
+ <manipulate output="result"> data.hotels &lt;&lt; result.value('id')
70
+ data.costs += result.value('costs').to_f</manipulate>
71
+ </call>
72
+ </parallel_branch>
73
+ <manipulate id="a3"> data.persons -= 1</manipulate>
74
+ </loop>
75
+ </parallel>
76
+ <choose>
77
+ <alternative condition="data.costs &gt; 700">
78
+ <call id="a4" endpoint="approve">
79
+ <parameters>
80
+ <method>:post</method>
81
+ <parameters>
82
+ <costs>data.costs</costs>
83
+ </parameters>
84
+ </parameters>
85
+ </call>
86
+ </alternative>
87
+ </choose>
43
88
  </description>
44
89
  </dslx>
45
90
  <status>
@@ -48,30 +93,53 @@ data.xml_lvnr = result.find('string(/data/lv/@id)')</manipulate>
48
93
  </status>
49
94
  <description>
50
95
  <description xmlns="http://cpee.org/ns/description/1.0">
51
- <call id="a1" endpoint="json" svg-label="Get JSON">
52
- <parameters>
53
- <label>Get JSON</label>
54
- <method>get</method>
55
- <parameters/>
56
- </parameters>
57
- <manipulate>data.json = result
58
- data.json_lv = result['lv']
59
- data.json_lvnr = result['lv']['lvnr']</manipulate>
60
- </call>
61
- <call id="a2" endpoint="xml">
96
+ <call id="a1" endpoint="bookAir">
62
97
  <parameters>
63
- <label>Get XML</label>
64
- <method>get</method>
65
- <parameters/>
98
+ <method>:post</method>
99
+ <parameters>
100
+ <from>data.from</from>
101
+ <to>data.to</to>
102
+ <persons>data.persons</persons>
103
+ </parameters>
66
104
  </parameters>
67
- <manipulate>data.xml_lv = result.find('string(/data/lv)')
68
- data.xml_lvnr = result.find('string(/data/lv/@id)')</manipulate>
105
+ <manipulate output="result"> data.airline = result.value('id')
106
+ data.costs += result.value('costs').to_f
107
+ status.update 1, 'Hotel'</manipulate>
69
108
  </call>
109
+ <parallel>
110
+ <loop pre_test="data.persons &gt; 0">
111
+ <parallel_branch pass="data.persons" local="p">
112
+ <call id="a2" endpoint="bookHotel">
113
+ <parameters>
114
+ <method>:post</method>
115
+ <parameters>
116
+ <to>data.to</to>
117
+ </parameters>
118
+ </parameters>
119
+ <manipulate output="result"> data.hotels &lt;&lt; result.value('id')
120
+ data.costs += result.value('costs').to_f</manipulate>
121
+ </call>
122
+ </parallel_branch>
123
+ <manipulate id="a3"> data.persons -= 1</manipulate>
124
+ </loop>
125
+ </parallel>
126
+ <choose>
127
+ <alternative condition="data.costs &gt; 700">
128
+ <call id="a4" endpoint="approve">
129
+ <parameters>
130
+ <method>:post</method>
131
+ <parameters>
132
+ <costs>data.costs</costs>
133
+ </parameters>
134
+ </parameters>
135
+ </call>
136
+ </alternative>
137
+ </choose>
70
138
  </description>
71
139
  </description>
72
140
  <transformation>
73
141
  <description type="copy"/>
74
- <dataelements type="xslt"/>
75
- <endpoints type="xslt"/>
142
+ <dataelements type="rest"/>
143
+ <endpoints type="rest"/>
76
144
  </transformation>
77
145
  </properties>