lib/sidekiq/throttled/middleware.rb in sidekiq-throttled-1.0.0.alpha.1 vs lib/sidekiq/throttled/middleware.rb in sidekiq-throttled-1.0.0
- old
+ new
@@ -7,17 +7,22 @@
module Throttled
# Server middleware that notifies strategy that job was finished.
#
# @private
class Middleware
- include Sidekiq::ServerMiddleware if Sidekiq::VERSION >= "6.5.0"
+ include Sidekiq::ServerMiddleware
# Called within Sidekiq job processing
def call(_worker, msg, _queue)
yield
ensure
- Registry.get msg["class"] do |strategy|
- strategy.finalize!(msg["jid"], *msg["args"])
+ job = msg.fetch("wrapped") { msg["class"] }
+ jid = msg["jid"]
+
+ if job && jid
+ Registry.get job do |strategy|
+ strategy.finalize!(jid, *msg["args"])
+ end
end
end
end
end
end