cpee 1.3.204 → 1.3.205
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/css/ui.css +9 -5
- data/cockpit/css/wfadaptor.css +13 -1
- data/cockpit/js/instance.js +26 -17
- data/cockpit/testsets/Concurrent.xml +19 -17
- data/cockpit/testsets/Lego Crane.xml +2 -2
- data/cockpit/testsets/Worklist Parallel.xml +17 -17
- data/cockpit/testsets/Worklist Test CPEE.xml +4 -4
- data/cockpit/testsets/Worklist Test.xml +5 -5
- data/cockpit/testsets/Worklist Test2.xml +4 -4
- data/cockpit/themes/default/symbols/callcorrelationreceive.svg +6 -0
- data/cockpit/themes/default/symbols/callcorrelationsend.svg +6 -0
- data/cockpit/themes/default/symbols/callinstantiation.svg +3 -0
- data/cockpit/themes/default/symbols/callmanipulateworklist.svg +6 -0
- data/cockpit/themes/default/symbols/callworklist.svg +4 -0
- data/cockpit/themes/default/theme.js +45 -3
- data/cpee.gemspec +1 -1
- data/lib/cpee/implementation.rb +7 -2
- data/log/server.rb +71 -65
- data/server/instances/20/properties.xml +68 -0
- data/server/instances/21/properties.xml +118 -0
- data/server/instances/22/properties.xml +525 -0
- data/server/instances/23/properties.xml +65 -0
- data/server/instances/24/properties.xml +65 -0
- data/server/instances/25/properties.xml +65 -0
- data/server/instances/26/properties.xml +65 -0
- data/server/instances/27/properties.xml +65 -0
- data/server/instances/28/properties.xml +65 -0
- data/server/instances/29/properties.xml +67 -0
- data/server/instances/30/notifications/f7afc30fd195bc06ac100a9b848c5da3/consumer-secret +1 -0
- data/server/instances/30/notifications/f7afc30fd195bc06ac100a9b848c5da3/producer-secret +1 -0
- data/server/instances/30/notifications/f7afc30fd195bc06ac100a9b848c5da3/subscription.xml +42 -0
- data/server/instances/30/properties.xml +65 -0
- metadata +21 -3
- data/server/weel.rb +0 -1
@@ -0,0 +1,6 @@
|
|
1
|
+
<svg class="clickable" xmlns="http://www.w3.org/2000/svg">
|
2
|
+
<circle cx="15" cy="15" r="14" class="stand"/>
|
3
|
+
<circle cx="15" cy="15" r="11" class="stand"/>
|
4
|
+
<rect x="9" y="11" width="12" height="8" class="black" style="fill: none"/>
|
5
|
+
<path d="m 9,11 6,4 6,-4" class="black" style="fill: none"/>
|
6
|
+
</svg>
|
@@ -0,0 +1,6 @@
|
|
1
|
+
<svg class="clickable" xmlns="http://www.w3.org/2000/svg">
|
2
|
+
<circle cx="15" cy="15" r="14" class="stand"/>
|
3
|
+
<circle cx="15" cy="15" r="11" class="stand"/>
|
4
|
+
<rect x="9" y="11" width="12" height="8" class="black"/>
|
5
|
+
<path d="m 9,11 6,3 6,-3" class="white" style="fill: none;"/>
|
6
|
+
</svg>
|
@@ -0,0 +1,6 @@
|
|
1
|
+
<svg class="clickable" xmlns="http://www.w3.org/2000/svg">
|
2
|
+
<rect x="1" y="1" width="28" height="28" rx="4" class="rfill stand"/>
|
3
|
+
<path transform="translate(-2,-2)" class="normal" style="fill:#000000;" d="m 15,6.5 a 3.9999995,4 0 0 0 -4,4 3.9999995,4 0 0 0 4,4 3.9999995,4 0 0 0 4,-4 3.9999995,4 0 0 0 -4,-4 z m 0,8 -3.5,0 c -1.108,0 -2,0.892 -2,2 l 0,5 c 0,1.108 0.892,2 2,2 l 7,0 c 1.108,0 2,-0.892 2,-2 l 0,-5 c 0,-1.108 -0.892,-2 -2,-2 l -3.5,0 z"/>
|
4
|
+
<circle cx="28" cy="27" r="9" class="rfill stand"/>
|
5
|
+
<text transform="translate(28,31)" class="small">s</text>
|
6
|
+
</svg>
|
@@ -0,0 +1,4 @@
|
|
1
|
+
<svg class="clickable" xmlns="http://www.w3.org/2000/svg">
|
2
|
+
<rect x="1" y="1" width="28" height="28" rx="4" class="rfill stand"/>
|
3
|
+
<path class="normal" style="fill:#000000;" d="m 15,6.5 a 3.9999995,4 0 0 0 -4,4 3.9999995,4 0 0 0 4,4 3.9999995,4 0 0 0 4,-4 3.9999995,4 0 0 0 -4,-4 z m 0,8 -3.5,0 c -1.108,0 -2,0.892 -2,2 l 0,5 c 0,1.108 0.892,2 2,2 l 7,0 c 1.108,0 2,-0.892 2,-2 l 0,-5 c 0,-1.108 -0.892,-2 -2,-2 l -3.5,0 z"/>
|
4
|
+
</svg>
|
@@ -111,10 +111,16 @@ function WFAdaptorManifestation(adaptor) {
|
|
111
111
|
'illustrator': {//{{{
|
112
112
|
'endnodes' : 'this',
|
113
113
|
'resolve_symbol' : function(node) {
|
114
|
-
if($(node).attr('endpoint')
|
114
|
+
if($(node).attr('endpoint').match(/^instantiation/)) {
|
115
115
|
return 'callinstantiation';
|
116
|
-
} else if($(node).attr('endpoint')
|
117
|
-
return '
|
116
|
+
} else if($(node).attr('endpoint').match(/^correlation_send/)) {
|
117
|
+
return 'callcorrelationsend';
|
118
|
+
} else if($(node).attr('endpoint').match(/^correlation_receive/)) {
|
119
|
+
return 'callcorrelationreceive';
|
120
|
+
} else if($(node).attr('endpoint').match(/^worklist/) && $('finalize,update', node).length > 0) {
|
121
|
+
return 'callmanipulateworklist';
|
122
|
+
} else if($(node).attr('endpoint').match(/^worklist/)) {
|
123
|
+
return 'callworklist';
|
118
124
|
} else if($('parameters > service', node).length > 0) {
|
119
125
|
return 'callinjection';
|
120
126
|
} else if($('finalize,update', node).length > 0) {
|
@@ -740,4 +746,40 @@ function WFAdaptorManifestation(adaptor) {
|
|
740
746
|
'type' : 'abstract',
|
741
747
|
'description': [self.adaptor.theme_dir + 'rngs/update.rng',self.adaptor.theme_dir + 'rngs/finalize.rng']
|
742
748
|
}; /*}}}*/
|
749
|
+
this.elements.callinstantiation = { /*{{{*/
|
750
|
+
'type' : 'abstract',
|
751
|
+
'parent': 'call',
|
752
|
+
'illustrator': {//{{{
|
753
|
+
'svg': self.adaptor.theme_dir + 'symbols/callinstantiation.svg'
|
754
|
+
},//}}}
|
755
|
+
}; /*}}}*/
|
756
|
+
this.elements.callcorrelationsend = { /*{{{*/
|
757
|
+
'type' : 'abstract',
|
758
|
+
'parent': 'call',
|
759
|
+
'illustrator': {//{{{
|
760
|
+
'svg': self.adaptor.theme_dir + 'symbols/callcorrelationsend.svg'
|
761
|
+
},//}}}
|
762
|
+
}; /*}}}*/
|
763
|
+
this.elements.callcorrelationreceive = { /*{{{*/
|
764
|
+
'type' : 'abstract',
|
765
|
+
'parent': 'call',
|
766
|
+
'illustrator': {//{{{
|
767
|
+
'svg': self.adaptor.theme_dir + 'symbols/callcorrelationreceive.svg'
|
768
|
+
},//}}}
|
769
|
+
}; /*}}}*/
|
770
|
+
this.elements.callworklist = { /*{{{*/
|
771
|
+
'type' : 'abstract',
|
772
|
+
'parent': 'call',
|
773
|
+
'illustrator': {//{{{
|
774
|
+
'svg': self.adaptor.theme_dir + 'symbols/callworklist.svg'
|
775
|
+
},//}}}
|
776
|
+
}; /*}}}*/
|
777
|
+
this.elements.callmanipulateworklist = { /*{{{*/
|
778
|
+
'type' : 'abstract',
|
779
|
+
'parent': 'call',
|
780
|
+
'description': self.adaptor.theme_dir + 'rngs/callmanipulate.rng',
|
781
|
+
'illustrator': {//{{{
|
782
|
+
'svg': self.adaptor.theme_dir + 'symbols/callmanipulateworklist.svg'
|
783
|
+
},//}}}
|
784
|
+
}; /*}}}*/
|
743
785
|
}
|
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.205"
|
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
@@ -20,8 +20,13 @@ require 'riddl/utils/properties'
|
|
20
20
|
require ::File.dirname(__FILE__) + '/controller'
|
21
21
|
|
22
22
|
require 'ostruct'
|
23
|
-
|
24
|
-
def
|
23
|
+
class ParaStruct < OpenStruct
|
24
|
+
def to_json(*a)
|
25
|
+
table.to_json
|
26
|
+
end
|
27
|
+
end
|
28
|
+
def →(a); ParaStruct.new(a); end
|
29
|
+
def ⭐(a); ParaStruct.new(a); end
|
25
30
|
|
26
31
|
module CPEE
|
27
32
|
|
data/log/server.rb
CHANGED
@@ -18,85 +18,91 @@ class Logging < Riddl::Implementation #{{{
|
|
18
18
|
<extension name="Concept" prefix="concept" uri="http://www.xes-standard.org/concept.xesext"/>
|
19
19
|
<extension name="Organizational" prefix="org" uri="http://www.xes-standard.org/org.xesext"/>
|
20
20
|
<extension name="Lifecycle" prefix="lifecycle" uri="http://www.xes-standard.org/lifecycle.xesext"/>
|
21
|
+
<global scope="trace">
|
22
|
+
<string key="concept:name" value="__INVALID__"/>
|
23
|
+
</global>
|
24
|
+
<global scope="event">
|
25
|
+
<string key="concept:name" value="__INVALID__"/>
|
26
|
+
<string key="concept:endpoint" value=""/>
|
27
|
+
<string key="id:id" value=""/>
|
28
|
+
<string key="lifecycle:transition" value="complete" />
|
29
|
+
<date key="time:timestamp" value=""/>
|
30
|
+
</global>
|
31
|
+
<classifier name="Data" keys="data_send data_received"/>
|
32
|
+
<classifier name="Data_Received" keys="data_received"/>
|
33
|
+
<classifier name="Data_Send" keys="data_send"/>
|
21
34
|
<trace/>
|
22
35
|
</log>
|
23
36
|
END
|
24
|
-
def
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
event
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
end
|
46
|
-
event.add 'string', :key => "concept:instance", :value => notification["endpoint"] if notification["endpoint"]
|
47
|
-
event.add 'string', :key => "id:id", :value => activity
|
37
|
+
def doc(event_name,log_dir,instancenr,notification)
|
38
|
+
uuid = notification['instance_uuid']
|
39
|
+
activity = notification["activity"]
|
40
|
+
parameters = notification['parameters']
|
41
|
+
receiving = notification['received']
|
42
|
+
pp notification
|
43
|
+
Dir.mkdir(log_dir+'/'+uuid) unless Dir.exist?(log_dir+'/'+uuid)
|
44
|
+
time_added=false
|
45
|
+
XML::Smart.modify(log_dir+'/'+uuid+'/log.xes',LOGTEMPLATE) do |xml|
|
46
|
+
begin
|
47
|
+
trace = xml.find("/xmlns:log/xmlns:trace").first
|
48
|
+
trace.add 'string', :key => "concept:name", :value => "Instance #{instancenr}" if trace.find('xmlns:string').empty?
|
49
|
+
event = trace.add "event"
|
50
|
+
if parameters && parameters.has_key?('label')
|
51
|
+
event.add 'string', :key => "concept:name", :value => parameters["label"]
|
52
|
+
else
|
53
|
+
event.add 'string', :key => "concept:name", :value => trace.find("string(xmlns:event[xmlns:string[@key='id:id' and @value='#{activity}']]/xmlns:string[@key='concept:name']/@value)")
|
54
|
+
end
|
55
|
+
event.add 'string', :key => "concept:endpoint", :value => notification["endpoint"] if notification["endpoint"]
|
56
|
+
event.add 'string', :key => "id:id", :value => activity
|
57
|
+
unless event_name=='receiving'
|
48
58
|
event.add 'string', :key => "lifecycle:transition", :value => event_name=='done'?"complete":"start"
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
59
|
+
else
|
60
|
+
event.add 'string', :key => "lifecycle:transition", :value => "unknown"
|
61
|
+
end
|
62
|
+
data_send = ((parameters[:arguments].nil? ? [] : parameters[:arguments]) rescue [])
|
63
|
+
if data_send && data_send.any?
|
64
|
+
list = event.add 'list', :key => "data_send"
|
65
|
+
data_send.each do |k,v|
|
66
|
+
list.add 'string', :key => k , :value => v
|
55
67
|
end
|
56
|
-
event.add 'date', :key => "time:timestamp", :value => Time.now.iso8601 unless time_added
|
57
|
-
rescue => e
|
58
|
-
puts e.message
|
59
|
-
puts e.backtrace
|
60
68
|
end
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
trace.add 'string', :key => "concept:name", :value => "Instance #{instancenr}" if trace.find('xmlns:string').empty?
|
75
|
-
event = trace.add "event"
|
76
|
-
event.add 'string', :key => "concept:name", :value => trace.find("string(xmlns:event[xmlns:string[@key='id:id' and @value='#{activity}']]/xmlns:string[@key='concept:name']/@value)")
|
77
|
-
event.add 'string', :key => "concept:instance", :value => notification["endpoint"] if notification["endpoint"]
|
78
|
-
event.add 'string', :key => "id:id", :value => notification["activity"]
|
79
|
-
event.add 'string', :key => "lifecycle:transition", :value => "unknown"
|
80
|
-
if receiving.any?
|
81
|
-
list = event.add 'list', :key => "data_received"
|
82
|
-
receiving.each do |k,v|
|
83
|
-
list.add 'string', :key => k, :value => v
|
69
|
+
if receiving && receiving.any?
|
70
|
+
list = event.add 'list', :key => "data_received"
|
71
|
+
if receiving.is_a? Array
|
72
|
+
receiving.each do |e|
|
73
|
+
e.each do |k,v|
|
74
|
+
case v['mimetype']
|
75
|
+
when /\/xml$/
|
76
|
+
node = list.add 'string', :key => k
|
77
|
+
node.add XML::Smart.string(v['content']).root
|
78
|
+
else
|
79
|
+
list.add 'string', :key => k, :value => v['content']
|
80
|
+
end
|
81
|
+
end
|
84
82
|
end
|
83
|
+
else
|
84
|
+
pp receiving
|
85
85
|
end
|
86
|
-
event.add 'date', :key => "time:timestamp", :value => Time.now.iso8601 unless time_added
|
87
|
-
rescue => e
|
88
|
-
puts e.message
|
89
|
-
puts e.backtrace
|
90
86
|
end
|
91
|
-
|
92
|
-
|
93
|
-
|
87
|
+
event.add 'date', :key => "time:timestamp", :value => Time.now.iso8601 unless time_added
|
88
|
+
rescue => e
|
89
|
+
puts e.message
|
90
|
+
puts e.backtrace
|
91
|
+
end
|
94
92
|
end
|
95
93
|
end
|
94
|
+
def response
|
95
|
+
topic = @p[1].value
|
96
|
+
event_name = @p[2].value
|
97
|
+
log_dir = ::File.dirname(__FILE__) + "/logs"
|
98
|
+
instancenr = @h['CPEE_INSTANCE'].split('/').last
|
99
|
+
notification = JSON.parse(@p[3].value)
|
100
|
+
doc(event_name,log_dir,instancenr,notification)
|
101
|
+
end
|
96
102
|
end #}}}
|
97
103
|
|
98
104
|
|
99
|
-
Riddl::Server.new(::File.dirname(__FILE__) + '/log.xml', :host => "
|
105
|
+
Riddl::Server.new(::File.dirname(__FILE__) + '/log.xml', :host => "coruscant.wst.univie.ac.at", :port => 9299) do #{{{
|
100
106
|
accessible_description true
|
101
107
|
cross_site_xhr true
|
102
108
|
log_path = "/home/demo/Projects/cpee-helpers/log/logs"
|
@@ -0,0 +1,68 @@
|
|
1
|
+
<properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
|
2
|
+
<attributes>
|
3
|
+
<uuid>8ef13d4b-8709-4556-838a-38f48cad63ba</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
|
+
<hotels>[]</hotels>
|
14
|
+
<costs>0</costs>
|
15
|
+
</dataelements>
|
16
|
+
<endpoints>
|
17
|
+
<bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
|
18
|
+
</endpoints>
|
19
|
+
<dsl><?xml version="1.0"?>
|
20
|
+
</dsl>
|
21
|
+
<dslx>
|
22
|
+
<parallel xmlns="http://cpee.org/ns/description/1.0">
|
23
|
+
<loop mode="pre_test" condition="data.persons > 0">
|
24
|
+
<parallel_branch pass="data.persons" local="p">
|
25
|
+
<call id="a2" endpoint="bookHotel">
|
26
|
+
<parameters>
|
27
|
+
<method>:post</method>
|
28
|
+
<arguments>
|
29
|
+
<to>"Vienna"</to>
|
30
|
+
</arguments>
|
31
|
+
</parameters>
|
32
|
+
<finalize output="result">data.hotels << result.value('id')
|
33
|
+
data.costs += result.value('costs').to_f</finalize>
|
34
|
+
</call>
|
35
|
+
</parallel_branch>
|
36
|
+
<manipulate id="a3">data.persons -= 1</manipulate>
|
37
|
+
</loop>
|
38
|
+
</parallel>
|
39
|
+
</dslx>
|
40
|
+
<status>
|
41
|
+
<id>0</id>
|
42
|
+
<message>undefined</message>
|
43
|
+
</status>
|
44
|
+
<description>
|
45
|
+
<parallel xmlns="http://cpee.org/ns/description/1.0">
|
46
|
+
<loop mode="pre_test" condition="data.persons > 0">
|
47
|
+
<parallel_branch pass="data.persons" local="p">
|
48
|
+
<call id="a2" endpoint="bookHotel">
|
49
|
+
<parameters>
|
50
|
+
<method>:post</method>
|
51
|
+
<arguments>
|
52
|
+
<to>"Vienna"</to>
|
53
|
+
</arguments>
|
54
|
+
</parameters>
|
55
|
+
<finalize output="result">data.hotels << result.value('id')
|
56
|
+
data.costs += result.value('costs').to_f</finalize>
|
57
|
+
</call>
|
58
|
+
</parallel_branch>
|
59
|
+
<manipulate id="a3">data.persons -= 1</manipulate>
|
60
|
+
</loop>
|
61
|
+
</parallel>
|
62
|
+
</description>
|
63
|
+
<transformation>
|
64
|
+
<description type="copy"/>
|
65
|
+
<dataelements type="rest"/>
|
66
|
+
<endpoints type="rest"/>
|
67
|
+
</transformation>
|
68
|
+
</properties>
|
@@ -0,0 +1,118 @@
|
|
1
|
+
<properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
|
2
|
+
<attributes>
|
3
|
+
<uuid>b27da837-73a2-418d-aad1-bc834317256e</uuid>
|
4
|
+
<info>BulkBuyer</info>
|
5
|
+
<modeltype>CPEE</modeltype>
|
6
|
+
<theme>default</theme>
|
7
|
+
</attributes>
|
8
|
+
<state>stopped</state>
|
9
|
+
<handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
|
10
|
+
<positions/>
|
11
|
+
<dataelements>
|
12
|
+
<instance>1</instance>
|
13
|
+
</dataelements>
|
14
|
+
<endpoints>
|
15
|
+
<corr>http://cpee.org/~demo/corr/corr.php</corr>
|
16
|
+
<mesg>http://cpee.org/~demo/corr/mesg.php</mesg>
|
17
|
+
</endpoints>
|
18
|
+
<dsl>call :a4, :mesg, parameters: { :label => "\"order\"", :method => :post, :arguments => [⭐(:name => :url, :value => "http://cpee.org/~demo/generated_data/instance_" + data.instance + "/m1.xml")] }
|
19
|
+
call :a2, :corr, parameters: { :label => "\"status report production start\"", :method => :post, :arguments => [⭐(:name => :correlate, :value => "/order/id"), ⭐(:name => :value, :value => "m13_" + data.instance )] }
|
20
|
+
call :a3, :corr, parameters: { :label => "\"status report end production\"", :method => :post, :arguments => [⭐(:name => :correlate, :value => "/order/id"), ⭐(:name => :value, :value => "m14_" + data.instance )] }
|
21
|
+
call :a5, :corr, parameters: { :label => "\"delivery of product\"", :method => :post, :arguments => [⭐(:name => :correlate, :value => "/order/id"), ⭐(:name => :value, :value => "m15_" + data.instance )] }
|
22
|
+
</dsl>
|
23
|
+
<dslx>
|
24
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
25
|
+
<call id="a4" endpoint="mesg">
|
26
|
+
<parameters>
|
27
|
+
<label>"order"</label>
|
28
|
+
<method>:post</method>
|
29
|
+
<arguments>
|
30
|
+
<url>"http://cpee.org/~demo/generated_data/instance_" + data.instance + "/m1.xml"</url>
|
31
|
+
</arguments>
|
32
|
+
</parameters>
|
33
|
+
</call>
|
34
|
+
<call id="a2" endpoint="corr">
|
35
|
+
<parameters>
|
36
|
+
<label>"status report production start"</label>
|
37
|
+
<method>:post</method>
|
38
|
+
<arguments>
|
39
|
+
<correlate>"/order/id"</correlate>
|
40
|
+
<value>"m13_" + data.instance </value>
|
41
|
+
</arguments>
|
42
|
+
</parameters>
|
43
|
+
</call>
|
44
|
+
<call id="a3" endpoint="corr">
|
45
|
+
<parameters>
|
46
|
+
<label>"status report end production"</label>
|
47
|
+
<method>:post</method>
|
48
|
+
<arguments>
|
49
|
+
<correlate>"/order/id"</correlate>
|
50
|
+
<value>"m14_" + data.instance </value>
|
51
|
+
</arguments>
|
52
|
+
</parameters>
|
53
|
+
</call>
|
54
|
+
<call id="a5" endpoint="corr">
|
55
|
+
<parameters>
|
56
|
+
<label>"delivery of product"</label>
|
57
|
+
<method>:post</method>
|
58
|
+
<arguments>
|
59
|
+
<correlate>"/order/id"</correlate>
|
60
|
+
<value>"m15_" + data.instance </value>
|
61
|
+
</arguments>
|
62
|
+
</parameters>
|
63
|
+
</call>
|
64
|
+
</description>
|
65
|
+
</dslx>
|
66
|
+
<status>
|
67
|
+
<id>0</id>
|
68
|
+
<message>undefined</message>
|
69
|
+
</status>
|
70
|
+
<description>
|
71
|
+
<description xmlns="http://cpee.org/ns/description/1.0">
|
72
|
+
<call id="a4" endpoint="mesg">
|
73
|
+
<parameters>
|
74
|
+
<label>"order"</label>
|
75
|
+
<method>:post</method>
|
76
|
+
<arguments>
|
77
|
+
<url>"http://cpee.org/~demo/generated_data/instance_" + data.instance + "/m1.xml"</url>
|
78
|
+
</arguments>
|
79
|
+
</parameters>
|
80
|
+
</call>
|
81
|
+
<call id="a2" endpoint="corr">
|
82
|
+
<parameters>
|
83
|
+
<label>"status report production start"</label>
|
84
|
+
<method>:post</method>
|
85
|
+
<arguments>
|
86
|
+
<correlate>"/order/id"</correlate>
|
87
|
+
<value>"m13_" + data.instance </value>
|
88
|
+
</arguments>
|
89
|
+
</parameters>
|
90
|
+
</call>
|
91
|
+
<call id="a3" endpoint="corr">
|
92
|
+
<parameters>
|
93
|
+
<label>"status report end production"</label>
|
94
|
+
<method>:post</method>
|
95
|
+
<arguments>
|
96
|
+
<correlate>"/order/id"</correlate>
|
97
|
+
<value>"m14_" + data.instance </value>
|
98
|
+
</arguments>
|
99
|
+
</parameters>
|
100
|
+
</call>
|
101
|
+
<call id="a5" endpoint="corr">
|
102
|
+
<parameters>
|
103
|
+
<label>"delivery of product"</label>
|
104
|
+
<method>:post</method>
|
105
|
+
<arguments>
|
106
|
+
<correlate>"/order/id"</correlate>
|
107
|
+
<value>"m15_" + data.instance </value>
|
108
|
+
</arguments>
|
109
|
+
</parameters>
|
110
|
+
</call>
|
111
|
+
</description>
|
112
|
+
</description>
|
113
|
+
<transformation>
|
114
|
+
<description type="copy"/>
|
115
|
+
<dataelements type="none"/>
|
116
|
+
<endpoints type="none"/>
|
117
|
+
</transformation>
|
118
|
+
</properties>
|