cpee 1.3.184 → 1.3.185

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a31a8e8152b419e274eb8edf2214b027f5c9d3ed
4
- data.tar.gz: fa2f0dc829efa251771738ccdadd91d7d5445034
3
+ metadata.gz: 643fe6d4ecaecf140b12011dff2a411aa84816af
4
+ data.tar.gz: b4accb49ec73bf5d8952a640ee61d2107cb59a2b
5
5
  SHA512:
6
- metadata.gz: 50dd4ef347e9c52ff661bf421bae0444a73401cc364cdb77e69f53bd747341b80feeb2c958f86baab3edef5bc1aafe039d76d1fa46c6ed86aaa0adc0dd36dee4
7
- data.tar.gz: 7a9715b4a610b38c12f5afd69ca28ab995f14bdecdf590849c55d3e11fc0d9cfcc47c6adf44d621b743b0982b6669c31f0a7c82300083d4585aabedfa1376b0b
6
+ metadata.gz: 8e5080fe480156c17a1e22df10d0c3dc03ee25f18c515891f335617642e53342ab014b8aedfa49bf8c337a749083cefd1219f5894e2e24b1ac062f5c56809f48
7
+ data.tar.gz: 82df739a32027bde851027de8d972be80113f0fd1f46b2fb41b53801c52257b22a94a07db67f89cfa5f0d69aa4611fe2f8bed80a7228990856d9cd91ae36ec6d
@@ -0,0 +1,116 @@
1
+ <?xml version="1.0"?>
2
+ <testset>
3
+ <handlers>
4
+ <handler url="http://solo.wst.univie.ac.at:9299/log">
5
+ <events topic="activity">calling,done</events>
6
+ </handler>
7
+ </handlers>
8
+ <dataelements/>
9
+ <handlerwrapper>LogHandlerWrapper</handlerwrapper>
10
+ <endpoints>
11
+ <timeout xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
12
+ <start xmlns="http://riddl.org/ns/common-patterns/properties/1.0">http://solo.wst.univie.ac.at/log.php</start>
13
+ </endpoints>
14
+ <positions/>
15
+ <description>
16
+ <description xmlns="http://cpee.org/ns/description/1.0">
17
+ <call id="a0" endpoint="start">
18
+ <parameters>
19
+ <label>"Task 1"</label>
20
+ <method/>
21
+ <type>:task</type>
22
+ <mid>'sid-7F616193-69F1-4097-A107-FC87404AE047'</mid>
23
+ <arguments/>
24
+ </parameters>
25
+ <finalize output="result"> data.x = result["n"]</finalize>
26
+ </call>
27
+ <choose mode="exclusive">
28
+ <alternative condition="data.x >= 100" language="text/javascript">
29
+ <call id="a11" endpoint="timeout">
30
+ <parameters>
31
+ <label>"Decision 2"</label>
32
+ <method/>
33
+ <type>:task</type>
34
+ <mid>'sid-F9FF9265-DAD9-4525-86DE-116C3F1FA44E'</mid>
35
+ <arguments>
36
+ <timeout>2</timeout>
37
+ </arguments>
38
+ </parameters>
39
+ </call>
40
+ </alternative>
41
+ <alternative condition="100 > data.x" language="text/javascript">
42
+ <call id="a10" endpoint="timeout">
43
+ <parameters>
44
+ <label>"Decision 1"</label>
45
+ <method/>
46
+ <type>:task</type>
47
+ <mid>'sid-603319C1-A371-4D9F-94DA-D9800C2E205F'</mid>
48
+ <arguments>
49
+ <timeout>2</timeout>
50
+ </arguments>
51
+ </parameters>
52
+ </call>
53
+ </alternative>
54
+ </choose>
55
+ <call id="a1" endpoint="timeout">
56
+ <parameters>
57
+ <label>"Task 2"</label>
58
+ <method/>
59
+ <type>:task</type>
60
+ <mid>'sid-B93496AA-15AA-4239-B301-8899F47204EE'</mid>
61
+ <arguments>
62
+ <timeout>2</timeout>
63
+ </arguments>
64
+ </parameters>
65
+ </call>
66
+ <parallel wait="-1">
67
+ <parallel_branch>
68
+ <call id="a4" endpoint="timeout">
69
+ <parameters>
70
+ <label>"P1"</label>
71
+ <method/>
72
+ <type>:task</type>
73
+ <mid>'sid-B410A048-6485-47AF-AA9A-3F570EC9799A'</mid>
74
+ <arguments>
75
+ <timeout>2</timeout>
76
+ </arguments>
77
+ </parameters>
78
+ </call>
79
+ </parallel_branch>
80
+ <parallel_branch>
81
+ <call id="a5" endpoint="timeout">
82
+ <parameters>
83
+ <label>"P2"</label>
84
+ <method/>
85
+ <type>:task</type>
86
+ <mid>'sid-E0C9C538-5D05-4578-8156-3947A40146A6'</mid>
87
+ <arguments>
88
+ <timeout>2</timeout>
89
+ </arguments>
90
+ </parameters>
91
+ </call>
92
+ </parallel_branch>
93
+ </parallel>
94
+ <call id="a7" endpoint="timeout">
95
+ <parameters>
96
+ <label>"Task 3"</label>
97
+ <method/>
98
+ <type>:task</type>
99
+ <mid>'sid-4692423B-174F-4460-B034-19E0624C585E'</mid>
100
+ <arguments>
101
+ <timeout>2</timeout>
102
+ </arguments>
103
+ </parameters>
104
+ </call>
105
+ </description>
106
+ </description>
107
+ <transformation>
108
+ <description type="copy"/>
109
+ <dataelements type="none"/>
110
+ <endpoints type="none"/>
111
+ </transformation>
112
+ <attributes>
113
+ <info xmlns="http://riddl.org/ns/common-patterns/properties/1.0">s</info>
114
+ <modeltype xmlns="http://riddl.org/ns/common-patterns/properties/1.0">Signavio</modeltype>
115
+ </attributes>
116
+ </testset>
data/cpee.gemspec CHANGED
@@ -1,13 +1,13 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "cpee"
3
- s.version = "1.3.184"
3
+ s.version = "1.3.185"
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"
7
7
 
8
8
  s.description = "see http://cpee.org"
9
9
 
10
- s.files = Dir['{example/**/*,server/**/*,lib/**/*,cockpit/**/*,contrib/logo*,contrib/Screen*}'] + %w(COPYING FEATURES INSTALL Rakefile cpee.gemspec README AUTHORS)
10
+ s.files = Dir['{example/**/*,server/**/*,lib/**/*,cockpit/**/*,contrib/logo*,contrib/Screen*,log/**/*}'] + %w(COPYING FEATURES INSTALL Rakefile cpee.gemspec README AUTHORS)
11
11
  s.require_path = 'lib'
12
12
  s.extra_rdoc_files = ['README']
13
13
  s.test_files = Dir['{test/*,test/*/tc_*.rb}']
data/log/log.xml ADDED
@@ -0,0 +1,13 @@
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
+
6
+ <facade>
7
+ <tile>
8
+ <layer name="events">
9
+ <apply-to>/log</apply-to>
10
+ </layer>
11
+ </tile>
12
+ </facade>
13
+ </declaration>
data/log/logs/1/test ADDED
@@ -0,0 +1 @@
1
+ test
data/log/server.rb ADDED
@@ -0,0 +1,83 @@
1
+ #!/usr/bin/ruby
2
+ require 'pp'
3
+ require 'json'
4
+ require 'rubygems'
5
+ require 'riddl/server'
6
+ require 'riddl/client'
7
+ require 'riddl/utils/notifications_producer'
8
+ require 'riddl/utils/properties'
9
+ require 'riddl/utils/fileserve'
10
+ require 'riddl/utils/downloadify'
11
+ require 'riddl/utils/turtle'
12
+
13
+
14
+ class Logging < Riddl::Implementation #{{{
15
+ def response
16
+ topic = @p[1].value
17
+ event = @p[2].value
18
+ if(topic == 'activity' && (event=='done' || event == 'calling'))
19
+ log_dir = ::File.dirname(__FILE__) + "/logs"
20
+ instancenr = @h['CPEE_INSTANCE'].split('/').last
21
+ notification = JSON.parse(@p[3].value)
22
+ log_hash = notification['log_hash']
23
+ Dir.mkdir(log_dir+'/'+instancenr) unless Dir.exist?(log_dir+'/'+instancenr)
24
+ unless File.exist?(log_dir+'/'+instancenr+'/log.xes')
25
+ FileUtils.cp(::File.dirname(__FILE__)+'/template.xes', log_dir+'/'+instancenr+'/log.xes')
26
+ XML::Smart.modify(log_dir+'/'+instancenr+'/log.xes') do |xml|
27
+ trace = xml.find("/xmlns:log/xmlns:trace").first
28
+ trace.add 'string', :key => "concept:name", :value => "Instance #{instancenr}"
29
+ end
30
+ end
31
+
32
+ time_added=false
33
+ XML::Smart.modify(log_dir+'/'+instancenr+'/log.xes') do |xml|
34
+ trace = xml.find("/xmlns:log/xmlns:trace").first
35
+ event = trace.add "event"
36
+ event.add 'string', :key => "concept:name", :value => log_hash["label"]
37
+ event.add 'string', :key => "lifecycle:transition", :value => event=='done'?"complete":"start"
38
+ pp log_hash
39
+ if log_hash.has_key?("data_send")
40
+ list = event.add 'list', :key => "data_send"
41
+ log_hash["data_send"].each do |k,v|
42
+ list.add 'string', :key => k , :value => v
43
+ end
44
+ end
45
+ if log_hash.has_key?("data_received")
46
+ log_hash["data_received"].delete_if do |e|
47
+ if e.keys[0]=="timestamp"
48
+ event.add 'date', :key => "time:timestamp", :value => e.values[0]
49
+ time_added=true
50
+ true
51
+ else
52
+ false
53
+ end
54
+ end
55
+ if log_hash["data_received"].length > 0
56
+ list = event.add 'list', :key => "data_received"
57
+ log_hash["data_received"].each{|e| list.add 'string', :key => e.keys[0] , :value => e.values[0]}
58
+ end
59
+ end
60
+ event.add 'date', :key => "time:timestamp", :value => Time.now unless time_added
61
+ end
62
+ else
63
+ pp "Something wrong"
64
+ end
65
+
66
+
67
+
68
+
69
+ end
70
+ end #}}}
71
+
72
+
73
+ Riddl::Server.new(::File.dirname(__FILE__) + '/log.xml', :host => "solo.wst.univie.ac.at", :port => 9299) do #{{{
74
+ accessible_description true
75
+ cross_site_xhr true
76
+
77
+
78
+ interface 'events' do
79
+ run Logging if post 'event'
80
+ #run CB if post 'vote'
81
+ end
82
+
83
+ end.loop! #}}}
data/log/template.xes ADDED
@@ -0,0 +1,6 @@
1
+ <log xmlns="http://www.xes-standard.org/" xes.version="1.0" xes.features="nested-attributes" openxes.version="1.0RC7">
2
+ <extension name="Time" prefix="time" uri="http://www.xes-standard.org/time.xesext"/>
3
+ <extension name="Concept" prefix="concept" uri="http://www.xes-standard.org/concept.xesext"/>
4
+ <extension name="Organizational" prefix="org" uri="http://www.xes-standard.org/org.xesext"/>
5
+ <trace/>
6
+ </log>
data/log/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>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cpee
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.184
4
+ version: 1.3.185
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juergen eTM Mangler
@@ -108,6 +108,7 @@ files:
108
108
  - cockpit/testsets/ICSOC Testset.xml
109
109
  - cockpit/testsets/Infinity.xml
110
110
  - cockpit/testsets/Linear.xml
111
+ - cockpit/testsets/Log.xml
111
112
  - cockpit/testsets/Mangler 1.xml
112
113
  - cockpit/testsets/Mangler 2.xml
113
114
  - cockpit/testsets/Promise.xml
@@ -267,6 +268,11 @@ files:
267
268
  - lib/engine/callbacks.rng
268
269
  - lib/engine/instance-info.rng
269
270
  - lib/engine/instances.rng
271
+ - log/log.xml
272
+ - log/logs/1/test
273
+ - log/server.rb
274
+ - log/template.xes
275
+ - log/topics.xml
270
276
  - server/handlerwrappers/default.rb
271
277
  - server/handlerwrappers/log.rb
272
278
  - server/handlerwrappers/soap.rb