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