cpee 1.3.206 → 1.3.207
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/cpee.gemspec +1 -1
- data/lib/cpee/controller.rb +9 -1
- data/log/yaml/log.xml +27 -0
- data/log/yaml/logoverlay.xml +10 -0
- data/log/yaml/server.rb +122 -0
- data/log/yaml/topics.xml +22 -0
- data/log/yaml/yaml.rb +19 -0
- data/server/instances/1/properties.xml +1 -1
- data/server/instances/2/properties.xml +1 -1
- data/server/instances/3/properties.xml +93 -35
- data/server/instances/4/properties.xml +87 -35
- data/server/instances/5/properties.xml +87 -35
- data/server/instances/6/notifications/0e9f3728f00c0562870110697bd8819c/consumer-secret +1 -0
- data/server/instances/6/notifications/0e9f3728f00c0562870110697bd8819c/producer-secret +1 -0
- data/server/instances/{30/notifications/f7afc30fd195bc06ac100a9b848c5da3 → 6/notifications/0e9f3728f00c0562870110697bd8819c}/subscription.xml +3 -7
- data/server/instances/6/properties.xml +92 -9
- data/server/server.rb +1 -1
- metadata +10 -30
- data/server/instances/10/properties.xml +0 -31
- data/server/instances/11/properties.xml +0 -62
- data/server/instances/12/properties.xml +0 -152
- data/server/instances/13/properties.xml +0 -62
- data/server/instances/14/properties.xml +0 -150
- data/server/instances/15/properties.xml +0 -69
- data/server/instances/16/properties.xml +0 -63
- data/server/instances/17/properties.xml +0 -31
- data/server/instances/18/properties.xml +0 -150
- data/server/instances/19/properties.xml +0 -152
- data/server/instances/20/properties.xml +0 -68
- data/server/instances/21/properties.xml +0 -118
- data/server/instances/22/properties.xml +0 -525
- data/server/instances/23/properties.xml +0 -65
- data/server/instances/24/properties.xml +0 -65
- data/server/instances/25/properties.xml +0 -65
- data/server/instances/26/properties.xml +0 -65
- data/server/instances/27/properties.xml +0 -65
- data/server/instances/28/properties.xml +0 -65
- data/server/instances/29/properties.xml +0 -67
- data/server/instances/30/notifications/f7afc30fd195bc06ac100a9b848c5da3/consumer-secret +0 -1
- data/server/instances/30/notifications/f7afc30fd195bc06ac100a9b848c5da3/producer-secret +0 -1
- data/server/instances/30/properties.xml +0 -65
- data/server/instances/7/properties.xml +0 -62
- data/server/instances/8/properties.xml +0 -31
- data/server/instances/9/properties.xml +0 -62
- data/server/resources/test.rb +0 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f25f955ce4d025a56dd90b97e7aff04983aa79c7
|
4
|
+
data.tar.gz: 5166ac6d0dce705032203a3752c484b449918313
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e8a5abd2641fce0f5e6dccc5bcd4d82948918f0b3d95277d24af3a43b5a0fc3e252b49c1c23a9486233e71b138e5df0472752b8433f63437e50e05f5b6fee625
|
7
|
+
data.tar.gz: fb26385147cdac4639ca8207c740852b3685faf68fc221d4c0f0ed729dc23db71ff76cb39f3576d73e84304d79be57ac8c3f0df9e90b44af172ae64d57e7532e
|
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.207"
|
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/controller.rb
CHANGED
@@ -96,9 +96,9 @@ module CPEE
|
|
96
96
|
unserialize_endpoints!
|
97
97
|
unserialize_dsl!
|
98
98
|
unserialize_positions!
|
99
|
-
unserialize_attributes!
|
100
99
|
|
101
100
|
@uuid = sync_uuid!
|
101
|
+
unserialize_attributes!
|
102
102
|
end
|
103
103
|
|
104
104
|
attr_reader :id
|
@@ -286,6 +286,14 @@ module CPEE
|
|
286
286
|
@properties.data.find("/p:properties/p:attributes/p:*").map do |ele|
|
287
287
|
@attributes[ele.qname.name] = ele.text
|
288
288
|
end
|
289
|
+
uuid = @properties.data.find("/p:properties/p:attributes/p:uuid")
|
290
|
+
if uuid.empty? || uuid.length != 1 || @properties.data.find("/p:properties/p:attributes/p:uuid[.=\"#{@uuid}\"]").empty?
|
291
|
+
@properties.modify do |doc|
|
292
|
+
attr = doc.find("/p:properties/p:attributes").first
|
293
|
+
attr.find('p:uuid').delete_all!
|
294
|
+
attr.prepend('uuid',@uuid)
|
295
|
+
end
|
296
|
+
end
|
289
297
|
end #}}}
|
290
298
|
def unserialize_dataelements! #{{{
|
291
299
|
@instance.data.clear
|
data/log/yaml/log.xml
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
<declaration xmlns="http://riddl.org/ns/declaration/1.0" xmlns:xi="http://www.w3.org/2001/XInclude">
|
2
|
+
<interface name="events">
|
3
|
+
<xi:include href="http://www.riddl.org/ns/common-patterns/notifications-consumer/1.0/consumer.xml"/>
|
4
|
+
</interface>
|
5
|
+
<interface name="cpee" location="http://cpee.org:9298">
|
6
|
+
<xi:include href="http://cpee.org:9298/?riddl-description"/>
|
7
|
+
</interface>
|
8
|
+
<interface name="logoverlay">
|
9
|
+
<xi:include href="logoverlay.xml"/>
|
10
|
+
</interface>
|
11
|
+
|
12
|
+
<facade>
|
13
|
+
<tile>
|
14
|
+
<layer name="cpee"/>
|
15
|
+
</tile>
|
16
|
+
<tile>
|
17
|
+
<layer name="events">
|
18
|
+
<apply-to>/log</apply-to>
|
19
|
+
</layer>
|
20
|
+
</tile>
|
21
|
+
<tile>
|
22
|
+
<layer name="logoverlay">
|
23
|
+
<apply-to>/{}/log</apply-to>
|
24
|
+
</layer>
|
25
|
+
</tile>
|
26
|
+
</facade>
|
27
|
+
</declaration>
|
@@ -0,0 +1,10 @@
|
|
1
|
+
<description datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes" xmlns="http://riddl.org/ns/description/1.0" xmlns:xi="http://www.w3.org/2001/XInclude">
|
2
|
+
<message name="logresponse">
|
3
|
+
<parameter name="file" mimetype="text/xml"/>
|
4
|
+
</message>
|
5
|
+
|
6
|
+
<resource>
|
7
|
+
<get out="logresponse"/>
|
8
|
+
</resource>
|
9
|
+
|
10
|
+
</description>
|
data/log/yaml/server.rb
ADDED
@@ -0,0 +1,122 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
require 'pp'
|
3
|
+
require 'json'
|
4
|
+
require 'yaml'
|
5
|
+
require 'rubygems'
|
6
|
+
require 'riddl/server'
|
7
|
+
require 'riddl/client'
|
8
|
+
require 'riddl/utils/notifications_producer'
|
9
|
+
require 'riddl/utils/properties'
|
10
|
+
require 'riddl/utils/fileserve'
|
11
|
+
require 'riddl/utils/downloadify'
|
12
|
+
require 'riddl/utils/turtle'
|
13
|
+
require 'time'
|
14
|
+
|
15
|
+
class Logging < Riddl::Implementation #{{{
|
16
|
+
LOGTEMPLATE = {"log" =>
|
17
|
+
{"extension" =>
|
18
|
+
{ "time" =>"http://www.xes-standard.org/time.xesext",
|
19
|
+
"concept" => "http://www.xes-standard.org/concept.xesext",
|
20
|
+
"organisational" => "http://www.xes-standard.org/org.xesext",
|
21
|
+
"lifecylce" => "http://www.xes-standard.org/lifecycle.xesext"
|
22
|
+
},
|
23
|
+
"global" =>
|
24
|
+
{
|
25
|
+
"trace" =>{"concept:name" => "__INVALID__"},
|
26
|
+
"event"=> {
|
27
|
+
"concept:name"=>"__INVALID__",
|
28
|
+
"concept:endpoint" => "",
|
29
|
+
"id:id" => "",
|
30
|
+
"lifecycle:transition" => "complete",
|
31
|
+
"time:timestamp" => ""
|
32
|
+
}
|
33
|
+
},
|
34
|
+
"classifier" =>{
|
35
|
+
"Data" => "data_send data_received",
|
36
|
+
"Data_Received"=>"data_receiver",
|
37
|
+
"Data_Send" => "data_send"
|
38
|
+
},
|
39
|
+
"trace" => {}
|
40
|
+
}
|
41
|
+
}
|
42
|
+
def doc(event_name,log_dir,instancenr,notification)
|
43
|
+
log = LOGTEMPLATE
|
44
|
+
uuid = notification['instance_uuid']
|
45
|
+
activity = notification["activity"]
|
46
|
+
parameters = notification['parameters']
|
47
|
+
receiving = notification['received']
|
48
|
+
Dir.mkdir(log_dir+'/'+uuid) unless Dir.exist?(log_dir+'/'+uuid)
|
49
|
+
time_added=false
|
50
|
+
log["log"]["trace"]["concept:name"] ||= "Instance #{instancenr}" unless log["log"]["trace"]["concept:name"]
|
51
|
+
File.open(log_dir+'/'+uuid+'/log.xes','w'){|f| f.puts log.to_yaml} unless File.exists? log_dir+'/'+uuid+'/log.xes'
|
52
|
+
event = {}
|
53
|
+
event["trace:id"] = instancenr
|
54
|
+
if parameters && parameters.has_key?('label')
|
55
|
+
event["concept:name"] = parameters["label"]
|
56
|
+
else
|
57
|
+
event["concept:name"]= log["log"]["trace"]["concept:name"]
|
58
|
+
end
|
59
|
+
event["concept:endpoint"] = notification["endpoint"] if notification["endpoint"]
|
60
|
+
event["id:id"] = activity
|
61
|
+
unless event_name=='receiving'
|
62
|
+
event["lifecycle:transition"]= event_name=='done'?"complete":"start"
|
63
|
+
else
|
64
|
+
event["lifecycle:transition"]="unknown"
|
65
|
+
end
|
66
|
+
data_send = ((parameters["arguments"].nil? ? [] : parameters["arguments"]) rescue [])
|
67
|
+
event["list"] = {"data_send" => data_send} unless data_send.empty?
|
68
|
+
if receiving && receiving.any?
|
69
|
+
if event.has_key? "list"
|
70
|
+
event["list"]["data_received"] ||= receiving
|
71
|
+
else
|
72
|
+
event["list"] = {"data_receiver" => receiving}
|
73
|
+
end
|
74
|
+
end
|
75
|
+
event["time:timestamp"]= Time.now.iso8601 unless time_added
|
76
|
+
File.open(log_dir+'/'+uuid+'/log.xes',"a") do |f|
|
77
|
+
f << {'event' => event}.to_yaml
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
def rec_unjson(value,list,key)
|
82
|
+
case value
|
83
|
+
when Array then
|
84
|
+
li = list.add 'list', :key => key
|
85
|
+
value.each_with_index do |v,k|
|
86
|
+
rec_unjson(v,li,k)
|
87
|
+
end
|
88
|
+
when Hash then
|
89
|
+
li = list.add 'list', :key => key
|
90
|
+
value.each do |k,v|
|
91
|
+
rec_unjson(v,li,k)
|
92
|
+
end
|
93
|
+
else
|
94
|
+
list.add 'string', :key => key, :value => value
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
98
|
+
def response
|
99
|
+
topic = @p[1].value
|
100
|
+
event_name = @p[2].value
|
101
|
+
log_dir = ::File.dirname(__FILE__) + "/../logs_yaml"
|
102
|
+
instancenr = @h['CPEE_INSTANCE'].split('/').last
|
103
|
+
notification = JSON.parse(@p[3].value)
|
104
|
+
doc(event_name,log_dir,instancenr,notification)
|
105
|
+
end
|
106
|
+
end #}}}
|
107
|
+
|
108
|
+
|
109
|
+
Riddl::Server.new(::File.dirname(__FILE__) + '/log.xml', :host => "coruscant.wst.univie.ac.at", :port => 9300) do #{{{
|
110
|
+
accessible_description true
|
111
|
+
cross_site_xhr true
|
112
|
+
log_path = "/home/demo/Projects/cpee-helpers/log/logs_yaml"
|
113
|
+
|
114
|
+
interface 'events' do
|
115
|
+
run Logging if post 'event'
|
116
|
+
end
|
117
|
+
interface 'logoverlay' do |r|
|
118
|
+
run Riddl::Utils::FileServe, log_path + r[:h]["RIDDL_DECLARATION_PATH"]+ ".xes","text/xml" if get
|
119
|
+
end
|
120
|
+
|
121
|
+
|
122
|
+
end.loop! #}}}
|
data/log/yaml/topics.xml
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
<!--
|
2
|
+
This file is part of CPEE.
|
3
|
+
|
4
|
+
CPEE is free software: you can redistribute it and/or modify it under the terms
|
5
|
+
of the GNU General Public License as published by the Free Software Foundation,
|
6
|
+
either version 3 of the License, or (at your option) any later version.
|
7
|
+
|
8
|
+
CPEE is distributed in the hope that it will be useful, but WITHOUT ANY
|
9
|
+
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
10
|
+
PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
11
|
+
|
12
|
+
You should have received a copy of the GNU General Public License along with
|
13
|
+
CPEE (file COPYING in the main directory). If not, see
|
14
|
+
<http://www.gnu.org/licenses/>.
|
15
|
+
-->
|
16
|
+
|
17
|
+
<topics xmlns='http://riddl.org/ns/common-patterns/notifications-producer/1.0'>
|
18
|
+
<topic id='activity'>
|
19
|
+
<event>calling</event>
|
20
|
+
<event>done</event>
|
21
|
+
</topic>
|
22
|
+
</topics>
|
data/log/yaml/yaml.rb
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
#!/usr/bin/ruby
|
2
|
+
require 'yaml'
|
3
|
+
require 'pp'
|
4
|
+
|
5
|
+
def pbuf(buf)
|
6
|
+
unless buf.empty?
|
7
|
+
pp YAML.load(buf)
|
8
|
+
pp '---'
|
9
|
+
end
|
10
|
+
buf.clear
|
11
|
+
end
|
12
|
+
|
13
|
+
buf = ""
|
14
|
+
File.open('log.xes').each do |line|
|
15
|
+
pbuf(buf) if line == "---\n"
|
16
|
+
buf += line
|
17
|
+
end
|
18
|
+
|
19
|
+
pbuf(buf)
|
@@ -1,9 +1,9 @@
|
|
1
1
|
<properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
|
2
2
|
<attributes>
|
3
|
-
<uuid>dec6ca32-a6b1-4955-bd97-79a1bc130f2d</uuid>
|
4
3
|
<info/>
|
5
4
|
<modeltype>CPEE</modeltype>
|
6
5
|
<theme>default</theme>
|
6
|
+
<uuid/>
|
7
7
|
</attributes>
|
8
8
|
<state>ready</state>
|
9
9
|
<handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
|
@@ -1,38 +1,73 @@
|
|
1
1
|
<properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
|
2
2
|
<attributes>
|
3
|
-
<
|
4
|
-
<info>Lego Plate</info>
|
3
|
+
<info>Linear</info>
|
5
4
|
<modeltype>CPEE</modeltype>
|
5
|
+
<theme>default</theme>
|
6
|
+
<uuid>
|
7
|
+
|
8
|
+
e3ee0cf2-f36c-45a0-9dc7-d5a2b54cc3bd
|
9
|
+
aaaaaaaa-f36c-45a0-9dc7-d5a2b54cc3bd
|
10
|
+
|
11
|
+
aaaaaaaa-f36c-45a0-9dc7-d5a2b54cc3bd
|
12
|
+
</uuid>
|
6
13
|
</attributes>
|
7
|
-
<state>
|
14
|
+
<state>ready</state>
|
8
15
|
<handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
|
9
|
-
<positions
|
16
|
+
<positions>
|
17
|
+
<a1>after</a1>
|
18
|
+
</positions>
|
10
19
|
<dataelements>
|
11
|
-
<
|
20
|
+
<x/>
|
12
21
|
</dataelements>
|
13
22
|
<endpoints>
|
14
23
|
<timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
|
15
|
-
<move>http://plate.wst.univie.ac.at:9200/go-next</move>
|
16
24
|
</endpoints>
|
17
|
-
<dsl>
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
25
|
+
<dsl>call :a1, :timeout, parameters: { :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
26
|
+
data.x += "a1,"
|
27
|
+
END
|
28
|
+
call :a2, :timeout, parameters: { :method => :post, :arguments => [⭐(:name => :timeout, :value => 4)] }, finalize: <<-END
|
29
|
+
data.x += "a2,"
|
30
|
+
END
|
31
|
+
call :a3, :timeout, parameters: { :method => :post, :arguments => [⭐(:name => :timeout, :value => 4)] }, finalize: <<-END
|
32
|
+
data.x += "a3,"
|
33
|
+
END
|
22
34
|
</dsl>
|
23
35
|
<dslx>
|
24
36
|
<description xmlns="http://cpee.org/ns/description/1.0">
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
37
|
+
<!--{{{-->
|
38
|
+
<call id="a1" endpoint="timeout">
|
39
|
+
<parameters>
|
40
|
+
<!--{{{-->
|
41
|
+
<method>:post</method>
|
42
|
+
<arguments>
|
43
|
+
<timeout>2</timeout>
|
44
|
+
</arguments>
|
45
|
+
</parameters>
|
46
|
+
<!--}}}-->
|
47
|
+
<finalize output="result">data.x += "a1,"</finalize>
|
48
|
+
</call>
|
49
|
+
<call id="a2" endpoint="timeout">
|
50
|
+
<parameters>
|
51
|
+
<!--{{{-->
|
52
|
+
<method>:post</method>
|
53
|
+
<arguments>
|
54
|
+
<timeout>4</timeout>
|
55
|
+
</arguments>
|
56
|
+
</parameters>
|
57
|
+
<!--}}}-->
|
58
|
+
<finalize output="result">data.x += "a2,"</finalize>
|
59
|
+
</call>
|
60
|
+
<call id="a3" endpoint="timeout">
|
61
|
+
<parameters>
|
62
|
+
<!--{{{-->
|
63
|
+
<method>:post</method>
|
64
|
+
<arguments>
|
65
|
+
<timeout>4</timeout>
|
66
|
+
</arguments>
|
67
|
+
</parameters>
|
68
|
+
<!--}}}-->
|
69
|
+
<finalize output="result">data.x += "a3,"</finalize>
|
70
|
+
</call>
|
36
71
|
</description>
|
37
72
|
</dslx>
|
38
73
|
<status>
|
@@ -41,22 +76,45 @@ end
|
|
41
76
|
</status>
|
42
77
|
<description>
|
43
78
|
<description xmlns="http://cpee.org/ns/description/1.0">
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
79
|
+
<!--{{{-->
|
80
|
+
<call id="a1" endpoint="timeout">
|
81
|
+
<parameters>
|
82
|
+
<!--{{{-->
|
83
|
+
<method>:post</method>
|
84
|
+
<arguments>
|
85
|
+
<timeout>2</timeout>
|
86
|
+
</arguments>
|
87
|
+
</parameters>
|
88
|
+
<!--}}}-->
|
89
|
+
<finalize output="result">data.x += "a1,"</finalize>
|
90
|
+
</call>
|
91
|
+
<call id="a2" endpoint="timeout">
|
92
|
+
<parameters>
|
93
|
+
<!--{{{-->
|
94
|
+
<method>:post</method>
|
95
|
+
<arguments>
|
96
|
+
<timeout>4</timeout>
|
97
|
+
</arguments>
|
98
|
+
</parameters>
|
99
|
+
<!--}}}-->
|
100
|
+
<finalize output="result">data.x += "a2,"</finalize>
|
101
|
+
</call>
|
102
|
+
<call id="a3" endpoint="timeout">
|
103
|
+
<parameters>
|
104
|
+
<!--{{{-->
|
105
|
+
<method>:post</method>
|
106
|
+
<arguments>
|
107
|
+
<timeout>4</timeout>
|
108
|
+
</arguments>
|
109
|
+
</parameters>
|
110
|
+
<!--}}}-->
|
111
|
+
<finalize output="result">data.x += "a3,"</finalize>
|
112
|
+
</call>
|
55
113
|
</description>
|
56
114
|
</description>
|
57
115
|
<transformation>
|
58
116
|
<description type="copy"/>
|
59
|
-
<dataelements type="
|
60
|
-
<endpoints type="
|
117
|
+
<dataelements type="rest"/>
|
118
|
+
<endpoints type="rest"/>
|
61
119
|
</transformation>
|
62
120
|
</properties>
|
@@ -1,38 +1,67 @@
|
|
1
1
|
<properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
|
2
2
|
<attributes>
|
3
|
-
<uuid>
|
4
|
-
<info>
|
3
|
+
<uuid>3e8bef88-b2b4-484d-a3ae-17441983c57c</uuid>
|
4
|
+
<info>Linear</info>
|
5
5
|
<modeltype>CPEE</modeltype>
|
6
|
+
<theme>default</theme>
|
6
7
|
</attributes>
|
7
|
-
<state>
|
8
|
+
<state>ready</state>
|
8
9
|
<handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
|
9
|
-
<positions
|
10
|
+
<positions>
|
11
|
+
<a1>after</a1>
|
12
|
+
</positions>
|
10
13
|
<dataelements>
|
11
|
-
<
|
14
|
+
<x/>
|
12
15
|
</dataelements>
|
13
16
|
<endpoints>
|
14
17
|
<timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
|
15
|
-
<move>http://plate.wst.univie.ac.at:9200/go-next</move>
|
16
18
|
</endpoints>
|
17
|
-
<dsl>
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
19
|
+
<dsl>call :a1, :timeout, parameters: { :method => :post, :arguments => [⭐(:name => :timeout, :value => 2)] }, finalize: <<-END
|
20
|
+
data.x += "a1,"
|
21
|
+
END
|
22
|
+
call :a2, :timeout, parameters: { :method => :post, :arguments => [⭐(:name => :timeout, :value => 4)] }, finalize: <<-END
|
23
|
+
data.x += "a2,"
|
24
|
+
END
|
25
|
+
call :a3, :timeout, parameters: { :method => :post, :arguments => [⭐(:name => :timeout, :value => 4)] }, finalize: <<-END
|
26
|
+
data.x += "a3,"
|
27
|
+
END
|
22
28
|
</dsl>
|
23
29
|
<dslx>
|
24
30
|
<description xmlns="http://cpee.org/ns/description/1.0">
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
31
|
+
<!--{{{-->
|
32
|
+
<call id="a1" endpoint="timeout">
|
33
|
+
<parameters>
|
34
|
+
<!--{{{-->
|
35
|
+
<method>:post</method>
|
36
|
+
<arguments>
|
37
|
+
<timeout>2</timeout>
|
38
|
+
</arguments>
|
39
|
+
</parameters>
|
40
|
+
<!--}}}-->
|
41
|
+
<finalize output="result">data.x += "a1,"</finalize>
|
42
|
+
</call>
|
43
|
+
<call id="a2" endpoint="timeout">
|
44
|
+
<parameters>
|
45
|
+
<!--{{{-->
|
46
|
+
<method>:post</method>
|
47
|
+
<arguments>
|
48
|
+
<timeout>4</timeout>
|
49
|
+
</arguments>
|
50
|
+
</parameters>
|
51
|
+
<!--}}}-->
|
52
|
+
<finalize output="result">data.x += "a2,"</finalize>
|
53
|
+
</call>
|
54
|
+
<call id="a3" endpoint="timeout">
|
55
|
+
<parameters>
|
56
|
+
<!--{{{-->
|
57
|
+
<method>:post</method>
|
58
|
+
<arguments>
|
59
|
+
<timeout>4</timeout>
|
60
|
+
</arguments>
|
61
|
+
</parameters>
|
62
|
+
<!--}}}-->
|
63
|
+
<finalize output="result">data.x += "a3,"</finalize>
|
64
|
+
</call>
|
36
65
|
</description>
|
37
66
|
</dslx>
|
38
67
|
<status>
|
@@ -41,22 +70,45 @@ end
|
|
41
70
|
</status>
|
42
71
|
<description>
|
43
72
|
<description xmlns="http://cpee.org/ns/description/1.0">
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
73
|
+
<!--{{{-->
|
74
|
+
<call id="a1" endpoint="timeout">
|
75
|
+
<parameters>
|
76
|
+
<!--{{{-->
|
77
|
+
<method>:post</method>
|
78
|
+
<arguments>
|
79
|
+
<timeout>2</timeout>
|
80
|
+
</arguments>
|
81
|
+
</parameters>
|
82
|
+
<!--}}}-->
|
83
|
+
<finalize output="result">data.x += "a1,"</finalize>
|
84
|
+
</call>
|
85
|
+
<call id="a2" endpoint="timeout">
|
86
|
+
<parameters>
|
87
|
+
<!--{{{-->
|
88
|
+
<method>:post</method>
|
89
|
+
<arguments>
|
90
|
+
<timeout>4</timeout>
|
91
|
+
</arguments>
|
92
|
+
</parameters>
|
93
|
+
<!--}}}-->
|
94
|
+
<finalize output="result">data.x += "a2,"</finalize>
|
95
|
+
</call>
|
96
|
+
<call id="a3" endpoint="timeout">
|
97
|
+
<parameters>
|
98
|
+
<!--{{{-->
|
99
|
+
<method>:post</method>
|
100
|
+
<arguments>
|
101
|
+
<timeout>4</timeout>
|
102
|
+
</arguments>
|
103
|
+
</parameters>
|
104
|
+
<!--}}}-->
|
105
|
+
<finalize output="result">data.x += "a3,"</finalize>
|
106
|
+
</call>
|
55
107
|
</description>
|
56
108
|
</description>
|
57
109
|
<transformation>
|
58
110
|
<description type="copy"/>
|
59
|
-
<dataelements type="
|
60
|
-
<endpoints type="
|
111
|
+
<dataelements type="rest"/>
|
112
|
+
<endpoints type="rest"/>
|
61
113
|
</transformation>
|
62
114
|
</properties>
|