Class: RoundhouseUi::CancelMiddleware

Inherits:
Object
  • Object
show all
Defined in:
lib/roundhouse_ui/cancel_middleware.rb

Overview

Opt-in Sidekiq server middleware that drops a job whose JID was cancelled before it runs. Install it:

Sidekiq.configure_server do |config|
config.server_middleware { |chain| chain.add RoundhouseUi::CancelMiddleware }
end

Instance Method Summary collapse

Instance Method Details

#call(_worker, job, _queue) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/roundhouse_ui/cancel_middleware.rb', line 11

def call(_worker, job, _queue)
  if RoundhouseUi::Cancellation.cancelled?(job["jid"])
    RoundhouseUi::Cancellation.clear!(job["jid"])
    return # acknowledge without running
  end
  yield
end