Class: RailsConsolePro::Services::QueueActionService
- Inherits:
-
Object
- Object
- RailsConsolePro::Services::QueueActionService
- Defined in:
- lib/rails_console_pro/services/queue_action_service.rb
Defined Under Namespace
Classes: ActionResult
Instance Method Summary collapse
Instance Method Details
#perform(action:, jid:, queue: nil) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/rails_console_pro/services/queue_action_service.rb', line 10 def perform(action:, jid:, queue: nil) jid = jid.to_s.strip return ActionResult.new(success: false, warning: 'Please provide a job id (jid)') if jid.empty? unless sidekiq_available? return ActionResult.new(success: false, warning: 'Queue actions are only supported for Sidekiq adapters right now.') end unless ensure_sidekiq_api_loaded return ActionResult.new(success: false, warning: "Unable to load Sidekiq API. Require 'sidekiq/api' and try again.") end case action.to_sym when :retry retry_job(jid) when :delete delete_job(jid, queue) when :details job_details(jid, queue) else ActionResult.new(success: false, warning: "Unknown jobs action: #{action}") end rescue => e ActionResult.new(success: false, warning: e.) end |