weel 1.99.70 → 1.99.71

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/weel.rb +25 -9
  3. data/weel.gemspec +1 -1
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3d0747682705e0b3fc0480a1453ec3d9eb384cbfe3c5efe0fe8c54252f25d8b3
4
- data.tar.gz: 05fb3d2130621def8028235bf368bac843af93edad483755d96b9dd7188cb345
3
+ metadata.gz: 2dc2c88d480b5299d495afce0adfaeff05e082d52a11be513365f7b5968fd9a7
4
+ data.tar.gz: 9c8e93373ba216e2554e15cf80f4658615700f02a8f9b1264e9fa067d507e894
5
5
  SHA512:
6
- metadata.gz: fa801199b59a79e88e8c3f3fc554cb35fda18609eb7ad5415a6822eee9477e6a5b68f882cb013004d9d76fc6cfe8e048abfec0f44fdb8f73d4022101349d037c
7
- data.tar.gz: c6538dde3e220125181620a59a40c4fa494037be711fdde99d538ad781afcccf7d91e642640d0604246bb4267a2e6c4ff3ea76fbfe0c3129db87cb2bbd30be29
6
+ metadata.gz: 3cda29ab7590661e3cd8e666f2b5a5d3e7b30af34baf7385a2877dd4ac4033b31ac7c49bb8f9c5176e9bc53e8be0693ad3facd29f5de8439d0ea688ddc4ae4ab
7
+ data.tar.gz: aae4ee0f1e624ce92254cf451177fffabf6ebb9b4aa76d04ced9ba4c1e037db79d7ec5cafaffe1c9236eaa632ed8bd7d0b5cae83be95cb418ec45df3a9ab8e59
@@ -215,6 +215,7 @@ class WEEL
215
215
  def self::inform_syntax_error(arguments,err,code); end
216
216
  def self::inform_handlerwrapper_error(arguments,err); end
217
217
  def self::inform_position_change(arguments,ipc); end
218
+ def self::modify_position_details(arguments); end
218
219
 
219
220
  def initialize(arguments,endpoint=nil,position=nil,continue=nil); end
220
221
 
@@ -256,6 +257,17 @@ class WEEL
256
257
  @detail = detail
257
258
  @passthrough = passthrough
258
259
  end
260
+ def as_json(*)
261
+ jsn = { 'position' => @position }
262
+ jsn['passtrough'] = @passthrough if @passthrough
263
+ jsn
264
+ end
265
+ def to_s
266
+ as_json.to_s
267
+ end
268
+ def to_json(*args)
269
+ as_json.to_json(*args)
270
+ end
259
271
  end # }}}
260
272
 
261
273
  class Continue # {{{
@@ -449,7 +461,7 @@ class WEEL
449
461
  @__weel_positions.delete Thread.current[:branch_position]
450
462
  begin
451
463
  ipc = {}
452
- ipc[:unmark] = [Thread.current[:branch_position].position]
464
+ ipc[:unmark] = [Thread.current[:branch_position]]
453
465
  @__weel_handlerwrapper::inform_position_change(@__weel_handlerwrapper_args,ipc)
454
466
  end rescue nil
455
467
  Thread.current[:branch_position] = nil
@@ -624,21 +636,21 @@ class WEEL
624
636
  ipc = {}
625
637
  if searchmode == :after
626
638
  wp = WEEL::Position.new(position, :after, nil)
627
- ipc[:after] = [wp.position]
639
+ ipc[:after] = [wp]
628
640
  else
629
641
  if Thread.current[:branch_parent] && Thread.current[:branch_parent][:branch_position]
630
642
  @__weel_positions.delete Thread.current[:branch_parent][:branch_position]
631
643
  ipc[:unmark] ||= []
632
- ipc[:unmark] << Thread.current[:branch_parent][:branch_position].position rescue nil
644
+ ipc[:unmark] << Thread.current[:branch_parent][:branch_position] rescue nil
633
645
  Thread.current[:branch_parent][:branch_position] = nil
634
646
  end
635
647
  if Thread.current[:branch_position]
636
648
  @__weel_positions.delete Thread.current[:branch_position]
637
649
  ipc[:unmark] ||= []
638
- ipc[:unmark] << Thread.current[:branch_position].position rescue nil
650
+ ipc[:unmark] << Thread.current[:branch_position] rescue nil
639
651
  end
640
652
  wp = WEEL::Position.new(position, skip ? :after : :at, nil)
641
- ipc[skip ? :after : :at] = [wp.position]
653
+ ipc[skip ? :after : :at] = [wp]
642
654
  end
643
655
  @__weel_positions << wp
644
656
  Thread.current[:branch_position] = wp
@@ -691,7 +703,7 @@ class WEEL
691
703
  )
692
704
  handlerwrapper.inform_activity_done
693
705
  wp.detail = :after
694
- @__weel_handlerwrapper::inform_position_change @__weel_handlerwrapper_args, :after => [wp.position]
706
+ @__weel_handlerwrapper::inform_position_change @__weel_handlerwrapper_args, :after => [wp]
695
707
  end
696
708
  when :call
697
709
  params = { }
@@ -727,6 +739,9 @@ class WEEL
727
739
 
728
740
  handlerwrapper.activity_handle passthrough, params
729
741
  wp.passthrough = handlerwrapper.activity_passthrough_value
742
+ unless wp.passthrough.nil?
743
+ @__weel_handlerwrapper::inform_position_change @__weel_handlerwrapper_args, :wait => [wp]
744
+ end
730
745
  begin
731
746
  # with loop if catching Signal::Again
732
747
  # handshake call and wait until it finished
@@ -770,8 +785,9 @@ class WEEL
770
785
  end while waitingresult == Signal::Again
771
786
  if handlerwrapper.activity_passthrough_value.nil?
772
787
  handlerwrapper.inform_activity_done
788
+ wp.passthrough = nil
773
789
  wp.detail = :after
774
- @__weel_handlerwrapper::inform_position_change @__weel_handlerwrapper_args, :after => [wp.position]
790
+ @__weel_handlerwrapper::inform_position_change @__weel_handlerwrapper_args, :after => [wp]
775
791
  end
776
792
  end
777
793
  raise Signal::Proceed
@@ -784,7 +800,7 @@ class WEEL
784
800
  @__weel_positions.delete wp
785
801
  Thread.current[:branch_position] = nil
786
802
  wp.detail = :unmark
787
- @__weel_handlerwrapper::inform_position_change @__weel_handlerwrapper_args, :unmark => [wp.position]
803
+ @__weel_handlerwrapper::inform_position_change @__weel_handlerwrapper_args, :unmark => [wp]
788
804
  rescue Signal::StopSkipManipulate, Signal::Stop
789
805
  self.__weel_state = :stopping
790
806
  rescue Signal::Skip
@@ -1007,7 +1023,7 @@ public
1007
1023
  end
1008
1024
  if @dslr.__weel_state == :running || @dslr.__weel_state == :finishing
1009
1025
  ipc = { :unmark => [] }
1010
- @dslr.__weel_positions.each{ |wp| ipc[:unmark] << wp.position }
1026
+ @dslr.__weel_positions.each{ |wp| ipc[:unmark] << wp }
1011
1027
  @dslr.__weel_positions.clear
1012
1028
  @dslr.__weel_handlerwrapper::inform_position_change(@dslr.__weel_handlerwrapper_args,ipc)
1013
1029
  @dslr.__weel_state = :finished
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "weel"
3
- s.version = "1.99.70"
3
+ s.version = "1.99.71"
4
4
  s.platform = Gem::Platform::RUBY
5
5
  s.license = "LGPL-3.0"
6
6
  s.summary = "Preliminary release of the Workflow Execution Engine Library (WEEL)"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: weel
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.99.70
4
+ version: 1.99.71
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juergen eTM Mangler
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-09-17 00:00:00.000000000 Z
12
+ date: 2018-11-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: test-unit