hutch-acknowledgements-retry_once 0.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: f211f1aed9ed43ddd87836672f95d9e935ab8b97b544626f62ea5dc0b782769f
4
+ data.tar.gz: 3ebc068800aad7e06bb85b8c9131715925c52fb4c8e128d22044d1d5c5bf0f85
5
+ SHA512:
6
+ metadata.gz: baa49959e1bab2c78eb84cc2b234017cdcf665b846f2ba99be4f9abc1c02c23b696279c207590cec41ec64a3414a71f4047ce3dc456eac9732588bf04411c82b
7
+ data.tar.gz: 8c7fd6b445c42efd5e80be40c4e1443a843fdf386a1529c30eefc01f4ca9461974261a30511ba0f720558b3d9d471ebd4a75aff154f4c1ea79b29d921af98033
@@ -0,0 +1,27 @@
1
+ require 'hutch/logging'
2
+ require 'hutch/acknowledgements/base'
3
+
4
+ module Hutch
5
+ module Acknowledgements
6
+ class RetryOnce < Base
7
+ include Logging
8
+
9
+ def initialize
10
+ @sleep_interval = ENV['HUTCH_RETRY_SLEEP_INTERVAL']&.to_f|| 0.2
11
+ end
12
+
13
+ def handle(delivery_info, properties, broker, ex)
14
+
15
+ return false if delivery_info.redelivered?
16
+
17
+ logger.debug "[Retry] Requeueing message #{properties.message_id}"
18
+
19
+ sleep @sleep_interval
20
+
21
+ broker.requeue delivery_info.delivery_tag
22
+
23
+ true
24
+ end
25
+ end
26
+ end
27
+ end
metadata ADDED
@@ -0,0 +1,57 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: hutch-acknowledgements-retry_once
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Hélio Nagamachi
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2021-09-27 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: hutch
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.1'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.1'
27
+ description: Retries failed messages on a hutch consumer, once.
28
+ email: 69481759+helionagamachi-basement@users.noreply.github.com
29
+ executables: []
30
+ extensions: []
31
+ extra_rdoc_files: []
32
+ files:
33
+ - lib/hutch/acknowledgements/retry_once.rb
34
+ homepage: https://github.com/basement-io/hutch-acknowledgements-retry-once
35
+ licenses:
36
+ - MIT
37
+ metadata: {}
38
+ post_install_message:
39
+ rdoc_options: []
40
+ require_paths:
41
+ - lib
42
+ required_ruby_version: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ required_rubygems_version: !ruby/object:Gem::Requirement
48
+ requirements:
49
+ - - ">="
50
+ - !ruby/object:Gem::Version
51
+ version: '0'
52
+ requirements: []
53
+ rubygems_version: 3.0.3
54
+ signing_key:
55
+ specification_version: 4
56
+ summary: Add this to your hutch config to have a retry on the messages processing
57
+ test_files: []