istox 0.1.130.pre.1 → 0.1.130.pre.2
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/.idea/istox-gem.iml +12 -30
- data/Gemfile.lock +6 -9
- data/istox.gemspec +0 -1
- data/lib/istox/helpers/bunny_boot.rb +6 -1
- data/lib/istox/helpers/publisher.rb +4 -1
- data/lib/istox/helpers/subscriber.rb +4 -5
- data/lib/istox/version.rb +1 -1
- metadata +2 -16
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 55b4aaaa8ab83cb0c061db6c94226363c0d8e6f781f94a2caa3c689454a1274d
|
|
4
|
+
data.tar.gz: 7e0daeaa9c8d49e66baa839ab2eebf08f7491978aeb4119541a768986ff77f37
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9a94d15db073a929c19b0780af1a83414a0423cc6ab5e88957807ce138434b6fc10a0c0dd349326f20ac6287f8dfc02033344dd380524483a32981d673a50166
|
|
7
|
+
data.tar.gz: 987b98782522ef8ca7231e128ffcdcb8100cc20a3a22248c1d12859ba3049df5ae97264a81f87becceee16eb2eacebd0a7d35827b604869abedadfa9b7fbc186
|
data/.idea/istox-gem.iml
CHANGED
|
@@ -532,36 +532,36 @@
|
|
|
532
532
|
</library>
|
|
533
533
|
</orderEntry>
|
|
534
534
|
<orderEntry type="module-library">
|
|
535
|
-
<library name="faraday (vbundled(
|
|
535
|
+
<library name="faraday (vbundled(0.17.3)) [path][gem]" type="rubylib">
|
|
536
536
|
<properties>
|
|
537
537
|
<option name="version" value="4" />
|
|
538
538
|
</properties>
|
|
539
539
|
<CLASSES>
|
|
540
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-
|
|
541
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-
|
|
542
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-
|
|
540
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-0.17.3/lib" />
|
|
541
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-0.17.3/spec" />
|
|
542
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-0.17.3/test" />
|
|
543
543
|
</CLASSES>
|
|
544
544
|
<SOURCES>
|
|
545
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-
|
|
546
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-
|
|
547
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-
|
|
545
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-0.17.3/lib" />
|
|
546
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-0.17.3/spec" />
|
|
547
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-0.17.3/test" />
|
|
548
548
|
</SOURCES>
|
|
549
549
|
<excluded>
|
|
550
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-
|
|
551
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-
|
|
550
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-0.17.3/spec" />
|
|
551
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday-0.17.3/test" />
|
|
552
552
|
</excluded>
|
|
553
553
|
</library>
|
|
554
554
|
</orderEntry>
|
|
555
555
|
<orderEntry type="module-library">
|
|
556
|
-
<library name="faraday_middleware (vbundled(
|
|
556
|
+
<library name="faraday_middleware (vbundled(0.14.0)) [path][gem]" type="rubylib">
|
|
557
557
|
<properties>
|
|
558
558
|
<option name="version" value="4" />
|
|
559
559
|
</properties>
|
|
560
560
|
<CLASSES>
|
|
561
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday_middleware-
|
|
561
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday_middleware-0.14.0/lib" />
|
|
562
562
|
</CLASSES>
|
|
563
563
|
<SOURCES>
|
|
564
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday_middleware-
|
|
564
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/faraday_middleware-0.14.0/lib" />
|
|
565
565
|
</SOURCES>
|
|
566
566
|
</library>
|
|
567
567
|
</orderEntry>
|
|
@@ -1391,24 +1391,6 @@
|
|
|
1391
1391
|
</excluded>
|
|
1392
1392
|
</library>
|
|
1393
1393
|
</orderEntry>
|
|
1394
|
-
<orderEntry type="module-library">
|
|
1395
|
-
<library name="redlock (vbundled(1.2.0)) [path][gem]" type="rubylib">
|
|
1396
|
-
<properties>
|
|
1397
|
-
<option name="version" value="4" />
|
|
1398
|
-
</properties>
|
|
1399
|
-
<CLASSES>
|
|
1400
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/redlock-1.2.0/lib" />
|
|
1401
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/redlock-1.2.0/spec" />
|
|
1402
|
-
</CLASSES>
|
|
1403
|
-
<SOURCES>
|
|
1404
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/redlock-1.2.0/lib" />
|
|
1405
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/redlock-1.2.0/spec" />
|
|
1406
|
-
</SOURCES>
|
|
1407
|
-
<excluded>
|
|
1408
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/2.5.0/gems/redlock-1.2.0/spec" />
|
|
1409
|
-
</excluded>
|
|
1410
|
-
</library>
|
|
1411
|
-
</orderEntry>
|
|
1412
1394
|
<orderEntry type="module-library">
|
|
1413
1395
|
<library name="rspec (vbundled(3.8.0)) [path][gem]" type="rubylib">
|
|
1414
1396
|
<properties>
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
istox (0.1.
|
|
4
|
+
istox (0.1.130.pre.2)
|
|
5
5
|
awesome_print
|
|
6
6
|
binding_of_caller
|
|
7
7
|
bunny (>= 2.12.0)
|
|
@@ -15,7 +15,6 @@ PATH
|
|
|
15
15
|
redis (>= 2.0.0)
|
|
16
16
|
redis-namespace (>= 1.0.0)
|
|
17
17
|
redis-rails (~> 5.0.2)
|
|
18
|
-
redlock (~> 1.2.0)
|
|
19
18
|
vault (~> 0.1)
|
|
20
19
|
|
|
21
20
|
GEM
|
|
@@ -91,14 +90,14 @@ GEM
|
|
|
91
90
|
i18n (~> 0.5)
|
|
92
91
|
fakeredis (0.7.0)
|
|
93
92
|
redis (>= 3.2, < 5.0)
|
|
94
|
-
faraday (
|
|
93
|
+
faraday (0.17.3)
|
|
95
94
|
multipart-post (>= 1.2, < 3)
|
|
96
|
-
faraday_middleware (
|
|
97
|
-
faraday (
|
|
95
|
+
faraday_middleware (0.14.0)
|
|
96
|
+
faraday (>= 0.7.4, < 1.0)
|
|
98
97
|
ffi (1.12.2)
|
|
99
98
|
globalid (0.4.2)
|
|
100
99
|
activesupport (>= 4.2.0)
|
|
101
|
-
google-protobuf (3.11.4)
|
|
100
|
+
google-protobuf (3.11.4-universal-darwin)
|
|
102
101
|
googleapis-common-protos-types (1.0.4)
|
|
103
102
|
google-protobuf (~> 3.0)
|
|
104
103
|
graphlient (0.3.7)
|
|
@@ -109,7 +108,7 @@ GEM
|
|
|
109
108
|
graphql-client (0.16.0)
|
|
110
109
|
activesupport (>= 3.0)
|
|
111
110
|
graphql (~> 1.8)
|
|
112
|
-
grpc (1.27.0)
|
|
111
|
+
grpc (1.27.0-universal-darwin)
|
|
113
112
|
google-protobuf (~> 3.11)
|
|
114
113
|
googleapis-common-protos-types (~> 1.0)
|
|
115
114
|
grpc-tools (1.27.0)
|
|
@@ -202,8 +201,6 @@ GEM
|
|
|
202
201
|
redis-store (>= 1.2, < 2)
|
|
203
202
|
redis-store (1.8.2)
|
|
204
203
|
redis (>= 4, < 5)
|
|
205
|
-
redlock (1.2.0)
|
|
206
|
-
redis (>= 3.0.0, < 5.0)
|
|
207
204
|
rspec (3.8.0)
|
|
208
205
|
rspec-core (~> 3.8.0)
|
|
209
206
|
rspec-expectations (~> 3.8.0)
|
data/istox.gemspec
CHANGED
|
@@ -44,7 +44,6 @@ Gem::Specification.new do |spec|
|
|
|
44
44
|
spec.add_dependency 'redis', '>= 2.0.0'
|
|
45
45
|
spec.add_dependency 'redis-namespace', '>= 1.0.0'
|
|
46
46
|
spec.add_dependency 'vault', '~> 0.1'
|
|
47
|
-
spec.add_dependency 'redlock', '~>1.2.0'
|
|
48
47
|
spec.add_development_dependency 'bullet', '~> 5.7.5'
|
|
49
48
|
spec.add_development_dependency 'bundler', '~> 1.16'
|
|
50
49
|
spec.add_development_dependency 'database_cleaner', '~> 1.6.0'
|
|
@@ -29,7 +29,6 @@ module Istox
|
|
|
29
29
|
|
|
30
30
|
# Put channel in confirmation mode
|
|
31
31
|
ch.confirm_select if opts[:confirm]
|
|
32
|
-
log.debug "channel unconfirmed_set is #{ch.unconfirmed_set}"
|
|
33
32
|
|
|
34
33
|
ch
|
|
35
34
|
end
|
|
@@ -137,6 +136,12 @@ module Istox
|
|
|
137
136
|
nil
|
|
138
137
|
end
|
|
139
138
|
|
|
139
|
+
def queue_worker_param_format(consumer_key)
|
|
140
|
+
queue_config_from_consumer_key!(consumer_key)['worker_param_format'] || 'open_struct'
|
|
141
|
+
rescue
|
|
142
|
+
nil
|
|
143
|
+
end
|
|
144
|
+
|
|
140
145
|
def queue_exclusive(consumer_key)
|
|
141
146
|
queue_config_from_consumer_key!(consumer_key)['exclusive'] || false
|
|
142
147
|
rescue
|
|
@@ -13,7 +13,7 @@ module Istox
|
|
|
13
13
|
# publish_confirm: true/false
|
|
14
14
|
# }
|
|
15
15
|
def publish(exchange: nil, routing_key: nil, binding:nil, binding_suffix:nil, message:, options: {})
|
|
16
|
-
|
|
16
|
+
log.debug '************************* Publish ************************'
|
|
17
17
|
if exchange.nil? && routing_key.nil?
|
|
18
18
|
raise 'Exchange and routing key cannot be nil at the same time.' if binding.nil?
|
|
19
19
|
exchange = ::Istox::BunnyBoot.binding_exchange_id(binding)
|
|
@@ -197,6 +197,7 @@ module Istox
|
|
|
197
197
|
end
|
|
198
198
|
|
|
199
199
|
def do_publish(ex, options = {}, message)
|
|
200
|
+
log.debug '************** do_publish ***************'
|
|
200
201
|
eid = ::Istox::BunnyBoot.eid ex
|
|
201
202
|
ch = ex.channel
|
|
202
203
|
channel_id = ch.id
|
|
@@ -216,6 +217,7 @@ module Istox
|
|
|
216
217
|
end
|
|
217
218
|
|
|
218
219
|
if confirm && mode == 0
|
|
220
|
+
log.debug '************** Confirm && mode == 0 ***************'
|
|
219
221
|
success = ex.channel.wait_for_confirms
|
|
220
222
|
if success
|
|
221
223
|
# ::Istox::BunnyBoot.del_tracker_on_channel channel_id
|
|
@@ -231,6 +233,7 @@ module Istox
|
|
|
231
233
|
ret
|
|
232
234
|
end
|
|
233
235
|
end
|
|
236
|
+
log.debug '******************* End of do_publish ******************'
|
|
234
237
|
rescue Bunny::ConnectionClosedError => e
|
|
235
238
|
log.debug "Publish fails due to #{e}"
|
|
236
239
|
sleep 1
|
|
@@ -142,14 +142,13 @@ module Istox
|
|
|
142
142
|
retry_limit = ::Istox::BunnyBoot.queue_retry_limit consumer_key
|
|
143
143
|
unless metadata[:priority] && retry_limit != -1 && metadata[:priority] >= retry_limit
|
|
144
144
|
processing_paylod = JSON.parse(payload)
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
log.info "Processing in consumer: #{klass}, paylod: #{payload_object.to_h.inspect}"
|
|
145
|
+
processing_paylod = ::Istox::CommonHelper.to_open_struct(processing_paylod) if ::Istox::BunnyBoot.queue_worker_param_format(consumer_key) == 'open_struct'
|
|
146
|
+
log.info "Processing in consumer: #{klass}, paylod: #{processing_paylod.to_h.inspect}"
|
|
148
147
|
|
|
149
148
|
if @workers[ruby_class].nil?
|
|
150
|
-
result = block.call(
|
|
149
|
+
result = block.call(processing_paylod, metadata, delivery_info) unless block.nil?
|
|
151
150
|
else
|
|
152
|
-
result = @workers[ruby_class].process(
|
|
151
|
+
result = @workers[ruby_class].process(processing_paylod, metadata, delivery_info)
|
|
153
152
|
end
|
|
154
153
|
end
|
|
155
154
|
# active_channel.ack(delivery_info.delivery_tag) if manual_ack
|
data/lib/istox/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: istox
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.130.pre.
|
|
4
|
+
version: 0.1.130.pre.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Siong Leng
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2020-03-
|
|
11
|
+
date: 2020-03-18 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: awesome_print
|
|
@@ -206,20 +206,6 @@ dependencies:
|
|
|
206
206
|
- - "~>"
|
|
207
207
|
- !ruby/object:Gem::Version
|
|
208
208
|
version: '0.1'
|
|
209
|
-
- !ruby/object:Gem::Dependency
|
|
210
|
-
name: redlock
|
|
211
|
-
requirement: !ruby/object:Gem::Requirement
|
|
212
|
-
requirements:
|
|
213
|
-
- - "~>"
|
|
214
|
-
- !ruby/object:Gem::Version
|
|
215
|
-
version: 1.2.0
|
|
216
|
-
type: :runtime
|
|
217
|
-
prerelease: false
|
|
218
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
219
|
-
requirements:
|
|
220
|
-
- - "~>"
|
|
221
|
-
- !ruby/object:Gem::Version
|
|
222
|
-
version: 1.2.0
|
|
223
209
|
- !ruby/object:Gem::Dependency
|
|
224
210
|
name: bullet
|
|
225
211
|
requirement: !ruby/object:Gem::Requirement
|