lib/sidekiq/throttled/registry.rb in sidekiq-throttled-0.1.0 vs lib/sidekiq/throttled/registry.rb in sidekiq-throttled-0.2.0
- old
+ new
@@ -1,5 +1,6 @@
+# frozen_string_literal: true
# internal
require "sidekiq/throttled/strategy"
module Sidekiq
module Throttled
@@ -32,11 +33,11 @@
def add_alias(new_name, old_name)
new_name = new_name.to_s
old_name = old_name.to_s
warn "Duplicate strategy name: #{new_name}" if @strategies[new_name]
- fail "Strategy not found: #{old_name}" unless @strategies[old_name]
+ raise "Strategy not found: #{old_name}" unless @strategies[old_name]
@aliases[new_name] = @strategies[old_name]
end
# @overload get(name)
@@ -64,9 +65,24 @@
# @return [Registry]
def each
return to_enum(__method__) unless block_given?
@strategies.each { |*args| yield(*args) }
self
+ end
+
+ # @overload each_with_static_keys()
+ # @return [Enumerator]
+ #
+ # @overload each_with_static_keys(&block)
+ # @yieldparam [String] name
+ # @yieldparam [Strategy] strategy
+ # @yield [strategy] Gives strategy to the block
+ # @return [Registry]
+ def each_with_static_keys
+ return to_enum(__method__) unless block_given?
+ @strategies.each do |name, strategy|
+ yield(name, strategy) unless strategy.dynamic_keys?
+ end
end
end
end
end
end