sidekiq-congestion 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ef06978b7ae5d4fa9606d28a99c6c9c00e4c172d
4
- data.tar.gz: 7cbc297a13bb300608fdaa0bef166eb18084196f
3
+ metadata.gz: a51009c1558dfb30424208168914c9159a434586
4
+ data.tar.gz: 2c535dab1285dbfca062296c9e48eae474dec800
5
5
  SHA512:
6
- metadata.gz: 082090eed9257eba8a109a307654e5a322169282f49af77b86fff67c8ebf9bcc415cd633b77aae6d73ab9e8a664e7b6c3986490d239db90abc11040a16d398c2
7
- data.tar.gz: 74e075d3bbc8b07d1665127eccff9ff4665e13622478821e3f32814da5529b0b49276b8a9f7c185c264ea8eb0a387a88b2298c4bf24f29886d6c0ae836314858
6
+ metadata.gz: 3a474f5bc0c6777eea128984dc93e8c963ddfbaa2984c63dec23599ab6f081c1aa1016e77ffb24570908326b051fc31c3058dbb192b3c732d7078e116fd63a84
7
+ data.tar.gz: aa5c167584f598d0c53508fa40575c52a824846dc5d95fce02034d277195f205384df56bcb084efa597ea58d0b7a9a3aac8b5be5b9433368eb84e091a7f7363e
data/README.md CHANGED
@@ -62,8 +62,13 @@ class YourWorker
62
62
  track_rejected: false, # false by default, see above
63
63
  # Restrict the scope of the limit via job params
64
64
  # `key` is called with the same arguments as perform
65
- key: ->(user_id) {
66
- "user_#{ user_id }_unique_job_identifier"
65
+ key: ->(user) {
66
+ "user_#{ user.id }_unique_job_identifier"
67
+ },
68
+ # Conditionally enable/disable the limit
69
+ # returning false will bypass the limit
70
+ enabled: ->(user) {
71
+ !user.admin?
67
72
  }
68
73
  }
69
74
 
@@ -18,7 +18,7 @@ module Sidekiq
18
18
  end
19
19
 
20
20
  def enabled?
21
- !!options
21
+ !!options && _enabled?
22
22
  end
23
23
 
24
24
  def reschedule?
@@ -46,6 +46,17 @@ module Sidekiq
46
46
 
47
47
  protected
48
48
 
49
+ def _enabled?
50
+ case options[:enabled]
51
+ when Proc
52
+ options[:enabled].call *args
53
+ when nil
54
+ true
55
+ else
56
+ !!options[:enabled]
57
+ end
58
+ end
59
+
49
60
  def rejection_method
50
61
  options.fetch(:reject_with, :reschedule).to_sym
51
62
  end
@@ -1,5 +1,5 @@
1
1
  module Sidekiq
2
2
  module Congestion
3
- VERSION = '0.0.3'
3
+ VERSION = '0.0.4'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sidekiq-congestion
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Parrish
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-09-16 00:00:00.000000000 Z
11
+ date: 2015-12-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: congestion