bender 0.2.1 → 0.2.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/examples/send_message.rb +1 -1
- data/lib/bender/client.rb +7 -3
- data/lib/bender/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0685640c861a463f505fbea42e5d84ee82fd4105
|
4
|
+
data.tar.gz: a07b9927454e57c146d71a6b54460d119a337e67
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4014812f2167b7fce29d7afb3d91cd62f3dd0fbf284971c67a62dd84cb88881cd2ebc810ebcd2482a689201f4c1551011064f038d34b3103f307122f034a4af5
|
7
|
+
data.tar.gz: e22cdecca0c7001d2c08c6f26a3ca0a833103378eb345b04e2a43e681c9c56844d033c1e473073747fd4bf0adaaa0495b17bd8d3dfe3564a64ef306e2608b9e8
|
data/examples/send_message.rb
CHANGED
@@ -8,4 +8,4 @@ message = {:hello => :you}
|
|
8
8
|
config = { :queue_prefix => 'my-custom-prefix', :watchers => [{:name => :watcher_life_cycle_hook}] }
|
9
9
|
|
10
10
|
bender = Bender::Client.new(hostname, config)
|
11
|
-
bender.publish(:watcher_life_cycle_hook, message)
|
11
|
+
bender.publish(:watcher_life_cycle_hook, message, true)
|
data/lib/bender/client.rb
CHANGED
@@ -108,19 +108,23 @@ module Bender
|
|
108
108
|
end
|
109
109
|
|
110
110
|
def with_confirmation
|
111
|
-
name = "#{@queue_name}-
|
111
|
+
name = "#{@queue_name}-ack-#{SecureRandom.uuid}"
|
112
112
|
cq = Bender::Client.sqs.queues.create(name, self.config[:create_options])
|
113
113
|
|
114
114
|
# send message
|
115
115
|
yield({:ack_queue_name => name})
|
116
116
|
|
117
117
|
Bender.logger.info("Polling #{cq.arn} for ack")
|
118
|
-
|
119
|
-
|
118
|
+
|
119
|
+
idle_timeout = 15.seconds
|
120
|
+
timeout = true
|
121
|
+
cq.poll(:wait_time_seconds => 2, :idle_timeout => idle_timeout) do |received_message|
|
120
122
|
# ack'd
|
123
|
+
timeout = false
|
121
124
|
break
|
122
125
|
end
|
123
126
|
|
127
|
+
Bender.logger.warn("Ack not received on #{cq.arn} after #{idle_timeout} seconds.") if timeout
|
124
128
|
rescue Exception => ex
|
125
129
|
Bender.logger.error("#{ex.message}#{ex.backtrace.join("\n")}")
|
126
130
|
ensure
|
data/lib/bender/version.rb
CHANGED