mumukit-nuntius 0.3.5 → 0.3.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/mumukit/nuntius/command_consumer.rb +19 -5
- data/lib/mumukit/nuntius/consumer.rb +3 -3
- data/lib/mumukit/nuntius/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
YTFmZGNmN2RmOGY2MDNhZjA5NDhmMzAxZmFkNDFiNTkxZjI0NzU0Yg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
N2Q3ZWNkNGEyMWNkMjQ5ZTdhMjYwMzg5NTlmYzFlZGFjN2Y1OTlmYQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZTY3NjVlOGEyZTQ3MDg5NTY0MDQ5NGU4MzQwODg1MTZiZTliNzNiOWQ0MTgw
|
10
|
+
NzM2Y2M5ZDM4NmYzZmFkMWE5ZTllZmU1NTM2YTNiNDQzOTA1MWQyMTg4ZDc3
|
11
|
+
MTI3Y2Q2MmYxODk4Njc2NWVhNTI1ZTYwOTY3MTdmOGYwYWRlNDk=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZGM3NzA3YjdlNmU2MzMxYzViZDhlNjE0NzIxNjNhMmJhMWZmZTA4MzBjYWVl
|
14
|
+
YjNjOWNkMTU0Zjc2ZWE5NTgwYWE5ZTJjYjZjMTJhYTkyZjI1YTkyYjk2YjAy
|
15
|
+
MDY2ZDFmYTQ1YTJjZjQ0ZTU3ZjlhNzQwZTY4ODNkMzFhN2MwOWU=
|
@@ -5,17 +5,31 @@ module Mumukit::Nuntius::CommandConsumer
|
|
5
5
|
def start(name)
|
6
6
|
Mumukit::Nuntius::Consumer.start "#{name}-commands" do |_delivery_info, _properties, body|
|
7
7
|
begin
|
8
|
-
choose_command(name, body
|
8
|
+
choose_command(name, body).execute!(body['data'])
|
9
|
+
rescue NoMethodError => e
|
10
|
+
log_exception(name, body, e)
|
9
11
|
rescue NameError => e
|
10
|
-
|
12
|
+
log_unkown_command(name, body)
|
11
13
|
rescue => e
|
12
|
-
|
14
|
+
log_exception(name, body, e)
|
13
15
|
end
|
14
16
|
end
|
15
17
|
end
|
16
18
|
|
17
|
-
def choose_command(name,
|
18
|
-
|
19
|
+
def choose_command(name, body)
|
20
|
+
command_name(name, body).constantize
|
21
|
+
end
|
22
|
+
|
23
|
+
def command_name(name, body)
|
24
|
+
"#{name.capitalize}::Command::#{body['type']}"
|
25
|
+
end
|
26
|
+
|
27
|
+
def log_unkown_command(name, body)
|
28
|
+
Mumukit::Nuntius::Logger.error "#{command_name(name, body)} does not exists."
|
29
|
+
end
|
30
|
+
|
31
|
+
def log_exception(name, body, e)
|
32
|
+
Mumukit::Nuntius::Logger.error "Failed to proccess #{command_name(name, body)}, error was: #{e}"
|
19
33
|
end
|
20
34
|
end
|
21
35
|
end
|
@@ -1,6 +1,6 @@
|
|
1
1
|
module Mumukit::Nuntius::Consumer
|
2
2
|
|
3
|
-
|
3
|
+
class << self
|
4
4
|
|
5
5
|
def start(queue_name, &block)
|
6
6
|
Mumukit::Nuntius::Logger.info "Attaching to queue #{queue_name}"
|
@@ -12,7 +12,7 @@ module Mumukit::Nuntius::Consumer
|
|
12
12
|
subscribe queue, channel, &block
|
13
13
|
rescue Interrupt => _
|
14
14
|
Mumukit::Nuntius::Logger.info "Leaving queue #{queue_name}"
|
15
|
-
|
15
|
+
ensure
|
16
16
|
channel.close
|
17
17
|
connection.close
|
18
18
|
end
|
@@ -34,5 +34,5 @@ module Mumukit::Nuntius::Consumer
|
|
34
34
|
end
|
35
35
|
end
|
36
36
|
end
|
37
|
-
|
37
|
+
end
|
38
38
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mumukit-nuntius
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Agustin Pina
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-09-
|
11
|
+
date: 2016-09-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|