rabid_mq 0.1.32 → 0.1.33
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/lib/rabid_mq/listener.rb +14 -7
- data/lib/rabid_mq/version.rb +1 -1
- data/lib/rabid_mq.rb +3 -1
- data/rabid_mq.gemspec +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ac1fbab1f556e3d449095f7b725dc27a8a9a3d29
|
|
4
|
+
data.tar.gz: a1c5c1deecd7aa89d1e1cc4f1c6c0273aa918187
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 5a5124a0a556be7bcef5f07e6071ed1ef2c85ce157455ea8de52d9b6a936bffaccd5389f712ac0a2dcceb3029da50594bf7a6c5b61c53a94cc7b84c60bc93060
|
|
7
|
+
data.tar.gz: 7e3218752cc5b829a515ecb371e4856915e3af238042f465e78a588f99bd367e15ac74463b726631a645caacd26acbca388df0a5f4305dff23e4f78c1ab1b37e
|
data/lib/rabid_mq/listener.rb
CHANGED
|
@@ -18,15 +18,17 @@ module RabidMQ
|
|
|
18
18
|
|
|
19
19
|
included do
|
|
20
20
|
class << self
|
|
21
|
-
attr_reader :amqp_queue, :amqp_exchange, :
|
|
21
|
+
attr_reader :amqp_queue, :amqp_exchange, :amqp_queue_name
|
|
22
22
|
|
|
23
23
|
def amqp(queue, exchange, exclusive: false, routing_key: '#')
|
|
24
24
|
# Set up an exchange
|
|
25
|
-
|
|
25
|
+
setup_exchange(exchange)
|
|
26
|
+
queue_name(queue)
|
|
27
|
+
|
|
26
28
|
@routing_key = routing_key
|
|
27
29
|
|
|
28
30
|
# Set up Queue
|
|
29
|
-
|
|
31
|
+
setup_queue(queue, exclusive: exclusive)
|
|
30
32
|
|
|
31
33
|
# Bind together
|
|
32
34
|
amqp_queue.bind(amqp_exchange, routing_key: routing_key)
|
|
@@ -35,11 +37,14 @@ module RabidMQ
|
|
|
35
37
|
# Use this as a macro in including classes like
|
|
36
38
|
# class MyClass
|
|
37
39
|
# include RabidMQ::Listener
|
|
38
|
-
# queue_name 'some.queue_name', exclusive: true
|
|
39
40
|
# end
|
|
40
41
|
#
|
|
41
|
-
def queue_name(name
|
|
42
|
-
@
|
|
42
|
+
def queue_name(name)
|
|
43
|
+
@amqp_queue_name ||= name
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def setup_queue(name, **options)
|
|
47
|
+
@amqp_queue = RabidMQ.channel.queue(amqp_queue_name, **options)
|
|
43
48
|
end
|
|
44
49
|
|
|
45
50
|
# Use this as a macro in including classes like
|
|
@@ -48,10 +53,12 @@ module RabidMQ
|
|
|
48
53
|
# exchange 'exchange.name'
|
|
49
54
|
# end
|
|
50
55
|
#
|
|
51
|
-
def
|
|
56
|
+
def setup_exchange(topic, **options)
|
|
52
57
|
@amqp_exchange = RabidMQ.topic_exchange topic, **options
|
|
53
58
|
end
|
|
54
59
|
|
|
60
|
+
alias_method :exchange, :setup_exchange
|
|
61
|
+
|
|
55
62
|
def bind(exchange=amqp_exchange, routing_key: @routing_key, **options)
|
|
56
63
|
amqp_queue.bind(exchange, routing_key: routing_key, **options)
|
|
57
64
|
end
|
data/lib/rabid_mq/version.rb
CHANGED
data/lib/rabid_mq.rb
CHANGED
|
@@ -18,8 +18,9 @@ module RabidMQ
|
|
|
18
18
|
def topic_exchange(topic, durable: false, **options)
|
|
19
19
|
channel.topic(name_with_env(topic), durable: durable, **options)
|
|
20
20
|
rescue Bunny::PreconditionFailed => e
|
|
21
|
-
if e.message.match(/inequivalent arg 'durable'/).
|
|
21
|
+
if !e.message.match(/inequivalent arg 'durable'/).nil?
|
|
22
22
|
puts "[WARNING] RabbitMQ exchange durability does not match for #{topic}, overriding to match exchange!"
|
|
23
|
+
binding.pry
|
|
23
24
|
durable = !durable
|
|
24
25
|
reconnect
|
|
25
26
|
topic_exchange(topic, durable: durable, **options)
|
|
@@ -50,6 +51,7 @@ module RabidMQ
|
|
|
50
51
|
def connect
|
|
51
52
|
connection.tap do |c|
|
|
52
53
|
c.start
|
|
54
|
+
|
|
53
55
|
end
|
|
54
56
|
end
|
|
55
57
|
|
data/rabid_mq.gemspec
CHANGED
|
@@ -30,7 +30,7 @@ Gem::Specification.new do |spec|
|
|
|
30
30
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
|
31
31
|
spec.require_paths = ["lib"]
|
|
32
32
|
|
|
33
|
-
spec.add_dependency 'bunny', '~> 2.
|
|
33
|
+
spec.add_dependency 'bunny', '~> 2.9.2'
|
|
34
34
|
spec.add_dependency 'activesupport'
|
|
35
35
|
|
|
36
36
|
spec.add_development_dependency "bundler", "~> 1.14"
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rabid_mq
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.33
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Tyrone Wilson
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2018-03-
|
|
11
|
+
date: 2018-03-26 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bunny
|
|
@@ -16,14 +16,14 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: 2.
|
|
19
|
+
version: 2.9.2
|
|
20
20
|
type: :runtime
|
|
21
21
|
prerelease: false
|
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
23
23
|
requirements:
|
|
24
24
|
- - "~>"
|
|
25
25
|
- !ruby/object:Gem::Version
|
|
26
|
-
version: 2.
|
|
26
|
+
version: 2.9.2
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: activesupport
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|