cpee 1.3.187 → 1.3.188

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c54e4d196d652abc94c82dddaa76fe4358562c6e
4
- data.tar.gz: d44189598cbc4a914fa6b33d70a7f0cdbbd9ffb7
3
+ metadata.gz: '0945c717914907e42fc04e35d1c7abbb7ced2bc6'
4
+ data.tar.gz: 584bf95746c861682ddaf116bb55fd74f374df5f
5
5
  SHA512:
6
- metadata.gz: ad3d4d6c8df9ca4e8cf77a1d00561687e155f8e14a5d6fdd51649040e4978e560b4196b6189e36723a0661d5cb061ceac1e549d25cd6d32652de134a5197794a
7
- data.tar.gz: e32c47e5f74aa049cb63bf2e05dfc1b38319b0a4f926ea5734e7909c6e9223f0038f31a77db6d3ced7308c47e447e2189df749aff5ade534085d1b8c11a97ead
6
+ metadata.gz: 1f4160c8856b0dffc7fab55faf5480c4d0f83e4e2459f0cf6585e8b27d3af4be5ee39617732a4893c916859c17363f2790b962eab9da02e0793ad7d7c1dfd5c4
7
+ data.tar.gz: a3f92e0823d40f34c4802df8ed2e0d21269490e0ab4315259b53e6fe2167ab9552b132e6e8c87230dd4a7638e4dacfca35fceef8af6774dc1bd06afff58b39cd
@@ -532,7 +532,7 @@ function save_testset() {// {{{
532
532
  var pars = $X('<description/>');
533
533
  pars.append($(res.documentElement));
534
534
  testset.append(pars);
535
- pars = $X('<transformation><description type="copy"/><dataelements type="none"/><endpoints type="none"/></transformation>');
535
+ pars = $X("<transformation><description type='copy'/><dataelements type='none'/><endpoints type='none'/></transformation>");
536
536
  testset.append(pars);
537
537
  $.ajax({
538
538
  type: "GET",
@@ -543,7 +543,7 @@ function save_testset() {// {{{
543
543
  pars.append($(res.documentElement).children());
544
544
  testset.append(pars);
545
545
  $('#savetestset').attr('download',name + '.xml');
546
- $('#savetestset').attr('href','data:application/xml;charset=utf-8;base64,' + window.btoa(testset.serializeXML()));
546
+ $('#savetestset').attr('href','data:application/xml;charset=utf-8;base64,' + window.btoa(testset.serializePrettyXML()));
547
547
  document.getElementById('savetestset').click();
548
548
  },
549
549
  error: report_failure
@@ -9,7 +9,12 @@ function WFAdaptorManifestation(adaptor) {
9
9
  this.source = function(rng) {
10
10
  $('#relaxngworker').empty();
11
11
  var rngw = new RelaxNGui(rng,$('#relaxngworker'),self.adaptor.description.context_eval);
12
- return $(rngw.save().documentElement);
12
+ var nnew = $(rngw.save().documentElement);
13
+ nnew.attr('trans-xmlns','http://cpee.org/ns/description/1.0');
14
+ var ntxt = nnew.serializeXML();
15
+ ntxt = ntxt.replace(/trans-xmlns/,'xmlns');
16
+
17
+ return($X(ntxt));
13
18
  };
14
19
 
15
20
  // Events
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.187"
3
+ s.version = "1.3.188"
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"
@@ -12,7 +12,7 @@ Gem::Specification.new do |s|
12
12
  s.extra_rdoc_files = ['README']
13
13
  s.test_files = Dir['{test/*,test/*/tc_*.rb}']
14
14
 
15
- s.required_ruby_version = '>=1.9.3'
15
+ s.required_ruby_version = '>=2.0.0'
16
16
 
17
17
  s.authors = ['Juergen eTM Mangler','Ralph Vigne','Gerhard Stuermer','Florian Stertz']
18
18
 
@@ -1,13 +1,13 @@
1
1
  # This file is part of CPEE.
2
- #
2
+ #
3
3
  # CPEE is free software: you can redistribute it and/or modify it under the terms
4
4
  # of the GNU General Public License as published by the Free Software Foundation,
5
5
  # either version 3 of the License, or (at your option) any later version.
6
- #
6
+ #
7
7
  # CPEE is distributed in the hope that it will be useful, but WITHOUT ANY
8
8
  # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
9
9
  # PARTICULAR PURPOSE. See the GNU General Public License for more details.
10
- #
10
+ #
11
11
  # You should have received a copy of the GNU General Public License along with
12
12
  # CPEE (file COPYING in the main directory). If not, see
13
13
  # <http://www.gnu.org/licenses/>.
@@ -29,7 +29,7 @@ module CPEE
29
29
  JSON::generate(value)
30
30
  elsif value.respond_to?(:to_s)
31
31
  value.to_s
32
- end
32
+ end
33
33
  end
34
34
 
35
35
  def self::parse(value)
@@ -40,13 +40,13 @@ module CPEE
40
40
  false
41
41
  when 'nil', 'null'
42
42
  nil
43
- else
43
+ else
44
44
  begin
45
45
  JSON::parse(value)
46
46
  rescue
47
47
  (Integer value rescue nil) || (Float value rescue nil) || value.to_s rescue nil || ''
48
48
  end
49
- end
49
+ end
50
50
  end
51
51
  end
52
52
 
@@ -67,7 +67,7 @@ module CPEE
67
67
  @mutex = Mutex.new
68
68
  @opts = opts
69
69
 
70
- @properties = Riddl::Utils::Properties::Backend.new(
70
+ @properties = Riddl::Utils::Properties::Backend.new(
71
71
  {
72
72
  :inactive => opts[:properties_schema_inactive],
73
73
  :active => opts[:properties_schema_active],
@@ -87,7 +87,7 @@ module CPEE
87
87
  unless ['stopped','ready','finished'].include?(@properties.data.find("string(/p:properties/p:state)"))
88
88
  @properties.modify do |doc|
89
89
  doc.find("/p:properties/p:state").first.text = 'stopped'
90
- end
90
+ end
91
91
  end
92
92
  unserialize_handlerwrapper!
93
93
  unserialize_dataelements!
@@ -104,19 +104,19 @@ module CPEE
104
104
  attr_reader :mutex
105
105
  attr_reader :attributes
106
106
 
107
- def base_url
107
+ def base_url
108
108
  @opts[:url]
109
109
  end
110
110
  def base_jid
111
111
  @opts[:jid]
112
112
  end
113
- def instance_url
113
+ def instance_url
114
114
  "#{@opts[:url]}/#{@id}"
115
115
  end
116
116
  def instance_jid
117
117
  "#{@opts[:jid]}/#{@id}"
118
118
  end
119
- def xmpp
119
+ def xmpp
120
120
  @opts[:xmpp]
121
121
  end
122
122
  def base
@@ -125,7 +125,7 @@ module CPEE
125
125
  def instance
126
126
  @opts[:jid] ? instance_url + "," + instance_jid : instance_url
127
127
  end
128
-
128
+
129
129
  def sim # {{{
130
130
  @thread.join if !@thread.nil? && @thread.alive?
131
131
  @thread = @instance.sim
@@ -142,16 +142,16 @@ module CPEE
142
142
  def stop # {{{
143
143
  t = @instance.stop
144
144
  t.run
145
- @callbacks.delete_if do |k,c|
145
+ @callbacks.delete_if do |k,c|
146
146
  # only remove vote_callbacks, the other stuff is removed by
147
147
  # the instance stopping cleanup
148
148
  if c.method == :vote_callback
149
149
  c.callback
150
150
  true
151
- else
151
+ else
152
152
  false
153
153
  end
154
- end
154
+ end
155
155
  @thread.join if !@thread.nil? && @thread.alive?
156
156
  @callback = [] # everything should be empty now
157
157
  end # }}}
@@ -186,8 +186,8 @@ module CPEE
186
186
  @properties.modify do |doc|
187
187
  node = doc.find("/p:properties/p:state").first
188
188
  node.text = @instance.state
189
- end
190
- end
189
+ end
190
+ end
191
191
  end # }}}
192
192
  def serialize_positions! # {{{
193
193
  @properties.modify do |doc|
@@ -212,22 +212,22 @@ module CPEE
212
212
  case op
213
213
  when :del
214
214
  @notifications.subscriptions[key].delete if @notifications.subscriptions.include?(key)
215
-
215
+
216
216
  @communication[key].io.close_connection if @communication[key].class == Riddl::Utils::Notifications::Producer::WS
217
217
  @communication.delete(key)
218
218
 
219
219
  @events.each do |eve,keys|
220
220
  keys.delete_if{|k,v| key == k}
221
- end
221
+ end
222
222
  @votes.each do |eve,keys|
223
223
  keys.delete_if do |k,v|
224
224
  if key == k
225
225
  @callbacks.each{|voteid,cb|cb.delete_if!(eve,k)}
226
226
  true
227
- end
227
+ end
228
228
  end
229
- end
230
- when :upd
229
+ end
230
+ when :upd
231
231
  if @notifications.subscriptions.include?(key)
232
232
  url = @communication[key]
233
233
  evs = []
@@ -235,7 +235,7 @@ module CPEE
235
235
  @events.each { |e,v| evs << e }
236
236
  @votes.each { |e,v| vos << e }
237
237
  @notifications.subscriptions[key].read do |doc|
238
- turl = doc.find('string(/n:subscription/@url)')
238
+ turl = doc.find('string(/n:subscription/@url)')
239
239
  url = turl == '' ? url : turl
240
240
  @communication[key] = url
241
241
  doc.find('/n:subscription/n:topic').each do |t|
@@ -252,14 +252,14 @@ module CPEE
252
252
  end
253
253
  end
254
254
  evs.each { |e| @events[e].delete(key) if @events[e] }
255
- vos.each do |e|
255
+ vos.each do |e|
256
256
  @callbacks.each{|voteid,cb|cb.delete_if!(e,key)}
257
257
  @votes[e].delete(key) if @votes[e]
258
- end
259
- end
258
+ end
259
+ end
260
260
  when :cre
261
261
  @notifications.subscriptions[key].read do |doc|
262
- turl = doc.find('string(/n:subscription/@url)')
262
+ turl = doc.find('string(/n:subscription/@url)')
263
263
  url = turl == '' ? nil : turl
264
264
  @communication[key] = url
265
265
  doc.find('/n:subscription/n:topic').each do |t|
@@ -272,10 +272,10 @@ module CPEE
272
272
  @votes["#{t.attributes['id']}/#{e}"][key] = url
273
273
  end
274
274
  end
275
- end
276
- end
277
- end # }}}
278
-
275
+ end
276
+ end
277
+ end # }}}
278
+
279
279
  def unserialize_attributes! #{{{
280
280
  @attributes = {}
281
281
  @properties.data.find("/p:properties/p:attributes/p:*").map do |ele|
@@ -294,7 +294,7 @@ module CPEE
294
294
  @instance.endpoints[e.qname.to_sym] = e.text
295
295
  end
296
296
  end #}}}
297
- def unserialize_state! #{{{
297
+ def unserialize_state! #{{{
298
298
  state = @properties.data.find("string(/p:properties/p:state)")
299
299
  if call_vote("state/change", :instance => @id, :info => info, :state => state)
300
300
  case state
@@ -302,7 +302,7 @@ module CPEE
302
302
  stop
303
303
  when 'running'
304
304
  start
305
- when 'simulating'
305
+ when 'simulating'
306
306
  sim
307
307
  when 'ready'
308
308
  @instance.state_signal
@@ -318,14 +318,14 @@ module CPEE
318
318
  begin
319
319
  hw = eval(@properties.data.find("string(/p:properties/p:handlerwrapper)"))
320
320
  @instance.handlerwrapper = hw
321
- rescue => e
321
+ rescue => e
322
322
  @instance.handlerwrapper = DefaultHandlerWrapper
323
- end
323
+ end
324
324
  if hw != @instance.handlerwrapper
325
325
  @properties.modify do |doc|
326
326
  node = doc.find("/p:properties/p:handlerwrapper").first
327
327
  node.text = @instance.handlerwrapper.to_s
328
- end
328
+ end
329
329
  end
330
330
  end #}}}
331
331
  def unserialize_positions! #{{{
@@ -356,7 +356,7 @@ module CPEE
356
356
 
357
357
  if desc.children.empty?
358
358
  tdesctype = tdatatype = tendptype = 'clean'
359
- end
359
+ end
360
360
 
361
361
  ### description transformation, including dslx to dsl
362
362
  addit = if tdesctype == 'copy' || tdesc.empty?
@@ -367,17 +367,17 @@ module CPEE
367
367
  Riddl::Parameter::Complex.new("description","text/xml",desc.children.first.dump),
368
368
  Riddl::Parameter::Simple.new("type","description")
369
369
  ]
370
- if status >= 200 && status < 300
371
- XML::Smart::string(res[0].value.read).root
372
- else
373
- raise 'Could not extract dslx'
374
- end
370
+ if status >= 200 && status < 300
371
+ XML::Smart::string(res[0].value.read).root
372
+ else
373
+ raise 'Could not extract dslx'
374
+ end
375
375
  elsif tdesctype == 'xslt' && !tdesc.empty?
376
376
  trans = XML::Smart::open_unprotected(tdesc.text)
377
377
  desc.children.first.to_doc.transform_with(trans).root
378
378
  elsif tdesctype == 'clean'
379
379
  XML::Smart::open_unprotected(@opts[:empty_dslx]).root
380
- else
380
+ else
381
381
  nil
382
382
  end
383
383
  unless addit.nil?
@@ -391,15 +391,15 @@ module CPEE
391
391
  ### dataelements extraction
392
392
  addit = if tdatatype == 'rest' && !tdata.empty?
393
393
  srv = Riddl::Client.interface(tdata.text,@opts[:transformation_service],:xmpp => @opts[:xmpp])
394
- status, res = srv.post [
394
+ status, res = srv.post [
395
395
  Riddl::Parameter::Complex.new("description","text/xml",desc.children.first.dump),
396
396
  Riddl::Parameter::Simple.new("type","dataelements")
397
397
  ]
398
- if status >= 200 && status < 300
398
+ if status >= 200 && status < 300
399
399
  res
400
- else
401
- raise 'Could not extract dataelements'
402
- end
400
+ else
401
+ raise 'Could not extract dataelements'
402
+ end
403
403
  elsif tdatatype == 'xslt' && !tdata.empty?
404
404
  trans = XML::Smart::open_unprotected(tdata.text)
405
405
  desc.children.first.to_doc.transform_with(trans)
@@ -407,7 +407,7 @@ module CPEE
407
407
  []
408
408
  else
409
409
  nil
410
- end
410
+ end
411
411
  unless addit.nil?
412
412
  node = doc.find("/p:properties/p:dataelements").first
413
413
  node.children.delete_all!
@@ -415,22 +415,22 @@ module CPEE
415
415
  addit.each_slice(2).each do |k,v|
416
416
  @instance.data[k.value.to_sym] = ValueHelper::parse(v.value)
417
417
  node.add(k.value,ValueHelper::generate(v.value))
418
- end
418
+ end
419
419
  nots << ["dataelements/change", {:instance => instance, :changed => JSON::generate(@instance.data)}]
420
- end
420
+ end
421
421
 
422
422
  ### endpoints extraction
423
423
  addit = if tendptype == 'rest' && !tdata.empty?
424
424
  srv = Riddl::Client.interface(tendp.text,@opts[:transformation_service],:xmpp => @opts[:xmpp])
425
- status, res = srv.post [
425
+ status, res = srv.post [
426
426
  Riddl::Parameter::Complex.new("description","text/xml",desc.children.first.dump),
427
427
  Riddl::Parameter::Simple.new("type","endpoints")
428
428
  ]
429
- if status >= 200 && status < 300
429
+ if status >= 200 && status < 300
430
430
  res
431
- else
432
- raise 'Could not extract endpoints'
433
- end
431
+ else
432
+ raise 'Could not extract endpoints'
433
+ end
434
434
  elsif tendptype == 'xslt' && !tdata.empty?
435
435
  trans = XML::Smart::open_unprotected(tendp.text)
436
436
  desc.children.first.to_doc.transform_with(trans)
@@ -438,7 +438,7 @@ module CPEE
438
438
  []
439
439
  else
440
440
  nil
441
- end
441
+ end
442
442
  unless addit.nil?
443
443
  node = doc.find("/p:properties/p:endpoints").first
444
444
  node.children.delete_all!
@@ -446,9 +446,9 @@ module CPEE
446
446
  addit.each_slice(2).each do |k,v|
447
447
  @instance.endpoints[k.value.to_sym] = ValueHelper::parse(v.value)
448
448
  node.add(k.value,ValueHelper::generate(v.value))
449
- end
449
+ end
450
450
  nots << ["endpoints/change", {:instance => instance, :changed => JSON::generate(@instance.endpoints)}]
451
- end
451
+ end
452
452
  nots << ["description/change", { :instance => instance }]
453
453
  rescue => err
454
454
  nots << ["description/error", { :instance => instance, :message => err.message }]
@@ -475,7 +475,7 @@ module CPEE
475
475
  e.root.add(k,v)
476
476
  end
477
477
  url.send(e.to_s) rescue nil
478
- end
478
+ end
479
479
  end
480
480
  end
481
481
  end
@@ -493,7 +493,7 @@ module CPEE
493
493
  inum += 1
494
494
  elsif url.class == Riddl::Utils::Notifications::Producer::WS
495
495
  inum += 1 unless url.closed?
496
- end
496
+ end
497
497
  end
498
498
 
499
499
  item.each do |key,url|
@@ -515,7 +515,7 @@ module CPEE
515
515
  else
516
516
  vote_callback(result,nil,continue,voteid,callback,inum)
517
517
  end
518
- end
518
+ end
519
519
  elsif u.class == Riddl::Utils::Notifications::Producer::WS
520
520
  @callbacks[callback] = Callback.new("vote #{notf.find{|a,b| a == 'notification'}[1]}", self, :vote_callback, what, k, :ws, continue, voteid, callback, inum)
521
521
  e = XML::Smart::string("<vote/>")
@@ -530,7 +530,7 @@ module CPEE
530
530
  continue.wait
531
531
 
532
532
  !@votes_results.delete(voteid).include?(false)
533
- else
533
+ else
534
534
  true
535
535
  end
536
536
  end # }}}
@@ -541,10 +541,10 @@ module CPEE
541
541
  @votes_results[voteid] << true
542
542
  else
543
543
  @votes_results[voteid] << (result && result[0] && result[0].value == 'true')
544
- end
544
+ end
545
545
  if (num == @votes_results[voteid].length)
546
546
  continue.continue
547
- end
547
+ end
548
548
  end # }}}
549
549
 
550
550
  def add_websocket(key,socket)# {{{
@@ -552,12 +552,12 @@ module CPEE
552
552
  @events.each do |a|
553
553
  if a[1].has_key?(key)
554
554
  a[1][key] = socket
555
- end
555
+ end
556
556
  end
557
557
  @votes.each do |a|
558
558
  if a[1].has_key?(key)
559
559
  a[1][key] = socket
560
- end
560
+ end
561
561
  end
562
562
  end # }}}
563
563
 
@@ -576,4 +576,4 @@ module CPEE
576
576
 
577
577
  end
578
578
 
579
- end
579
+ end