rbbt-util 5.26.170 → 5.26.171

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
  SHA256:
3
- metadata.gz: ec58135152ab8da64225ec6ee2c82630300f745e9a97da8bfbce6d1286792f28
4
- data.tar.gz: 7ddc25495f7f37536aac591c645095acd176f36dcb68c7e2f24f53d8a8ad7354
3
+ metadata.gz: b30207a19261c11a2613c091fde28604cc9186a6fafec8f74b33ecbb4e9cbac9
4
+ data.tar.gz: 3822e3009d4955690eff0e5554756cf6b1e898e1e9235814630f37a7e3192cfd
5
5
  SHA512:
6
- metadata.gz: 11bd33815e5d784ef4c2fe8dca4580a6896a76aaa14fd7e67251ceb193e46472e25d292e5fec23116a39afe15c3951b83cd9696a3050b669c60ee7af6fd759bd
7
- data.tar.gz: 87d3e4dfbf4286c8303b9bedd83462c5cb6f276802fd54068c9628a64bcff5d4a6cbde520de9495763f4cf008acc8465b1d4df1cc2955bdfe99c34cd42c9ae40
6
+ metadata.gz: 187d8e5dd75a5bfc750e93e6f8d41b4bf813ab800bb33b6aefd07695fc5d3d7531b904cb049b72f56cd06089d651d090152a8e7adfe3e0642182bf229d3b5ee9
7
+ data.tar.gz: 383c16854ec7772f32ced9fc0a57708b626b3db59cce5b41cee7ae909418f96f0058eba3e488db167a68d760bc8b85f252998f7aa9fb577ba9aec45d461c5d8f
@@ -52,26 +52,35 @@ module Persist
52
52
  out(key)
53
53
  end
54
54
 
55
+ def lock
56
+ lock_filename = Persist.persistence_path(persistence_path, {:dir => TSV.lock_dir})
57
+ Misc.lock(lock_filename) do
58
+ yield
59
+ end
60
+ end
61
+
55
62
  def write_and_read
56
- lock_filename = Persist.persistence_path(persistence_path + '.write', {:dir => TSV.lock_dir})
63
+ #lock_filename = Persist.persistence_path(persistence_path, {:dir => TSV.lock_dir})
57
64
  #mutex.synchronize do
58
- Misc.lock(lock_filename) do
59
- write if closed? or not write?
60
- res = begin
61
- yield
62
- ensure
63
- read
64
- end
65
- res
65
+ #Misc.lock(lock_filename) do
66
+ lock do
67
+ write true if closed? or not write?
68
+ begin
69
+ yield
70
+ ensure
71
+ read
72
+ end
66
73
  end
67
74
  #end
75
+ #end
68
76
  end
69
77
 
70
78
  def write_and_close
71
- lock_filename = Persist.persistence_path(persistence_path + '.write', {:dir => TSV.lock_dir})
79
+ #lock_filename = Persist.persistence_path(persistence_path + '.write', {:dir => TSV.lock_dir})
72
80
  #mutex.synchronize do
73
- Misc.lock(lock_filename, true) do
74
- write if closed? || ! write?
81
+ #Misc.lock(lock_filename, true) do
82
+ lock do
83
+ write true if closed? || ! write?
75
84
  res = begin
76
85
  yield
77
86
  rescue Exception
@@ -81,18 +90,20 @@ module Persist
81
90
  close
82
91
  end
83
92
  res
84
- #end
85
93
  end
94
+ #end
95
+ #end
86
96
  end
87
97
 
88
98
  def read_and_close
89
- read if closed? || ! read?
90
- res = begin
91
- yield
92
- ensure
93
- close
94
- end
95
- res
99
+ lock do
100
+ read true if closed? || ! read?
101
+ begin
102
+ yield
103
+ ensure
104
+ close
105
+ end
106
+ end
96
107
  end
97
108
 
98
109
 
@@ -73,9 +73,9 @@ module Filtered
73
73
 
74
74
  def save(ids)
75
75
  if persistence
76
- persistence.write
77
- persistence[self.key] = ids
78
- persistence.read
76
+ persistence.write_and_close do
77
+ persistence[self.key] = ids
78
+ end
79
79
  else
80
80
  if @list.nil?
81
81
  @list = ids
@@ -103,7 +103,9 @@ module Filtered
103
103
  list
104
104
  else
105
105
  return nil if not persistence.include?(self.key)
106
- persistence[self.key]
106
+ persistence.write_and_close do
107
+ persistence[self.key]
108
+ end
107
109
  end
108
110
  end
109
111
 
@@ -130,10 +132,13 @@ module Filtered
130
132
  def clean
131
133
  add_unsaved
132
134
  if persistence and persistence.include? self.key
133
- restore = ! persistence.write?
134
- persistence.write unless persistence.write?
135
- persistence.delete self.key
136
- persistence.read if restore
135
+ persistence.write_and_close do
136
+ persistence.delete self.key
137
+ end
138
+ #restore = ! persistence.write?
139
+ #persistence.write unless persistence.write?
140
+ #persistence.delete self.key
141
+ #persistence.read if restore
137
142
  else
138
143
  @list = nil
139
144
  end
@@ -142,7 +147,9 @@ module Filtered
142
147
  def reset
143
148
  add_unsaved
144
149
  if persistence
145
- persistence.clear
150
+ persistence.write_and_close do
151
+ persistence.clear
152
+ end
146
153
  else
147
154
  @list = nil
148
155
  end
@@ -507,6 +507,7 @@ class Step
507
507
  ret = RbbtSemaphore.wait_semaphore(semaphore)
508
508
  raise SemaphoreInterrupted if ret == -1
509
509
  end
510
+
510
511
  begin
511
512
  begin
512
513
  @forked = true
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbbt-util
3
3
  version: !ruby/object:Gem::Version
4
- version: 5.26.170
4
+ version: 5.26.171
5
5
  platform: ruby
6
6
  authors:
7
7
  - Miguel Vazquez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-04-13 00:00:00.000000000 Z
11
+ date: 2020-04-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake