Class: Pgbus::JobsController
- Inherits:
-
ApplicationController
- Object
- ApplicationController
- Pgbus::JobsController
- Defined in:
- app/controllers/pgbus/jobs_controller.rb
Instance Method Summary collapse
- #discard ⇒ Object
- #discard_all ⇒ Object
- #discard_all_enqueued ⇒ Object
- #discard_selected_enqueued ⇒ Object
- #discard_selected_failed ⇒ Object
- #index ⇒ Object
- #retry ⇒ Object
- #retry_all ⇒ Object
- #show ⇒ Object
Methods inherited from ApplicationController
Instance Method Details
#discard ⇒ Object
30 31 32 33 34 35 36 |
# File 'app/controllers/pgbus/jobs_controller.rb', line 30 def discard if data_source.discard_failed_event(params[:id]) redirect_to jobs_path, notice: "Job discarded." else redirect_to jobs_path, alert: "Could not discard job." end end |
#discard_all ⇒ Object
43 44 45 46 |
# File 'app/controllers/pgbus/jobs_controller.rb', line 43 def discard_all count = data_source.discard_all_failed redirect_to jobs_path, notice: "Discarded #{count} jobs." end |
#discard_all_enqueued ⇒ Object
48 49 50 51 |
# File 'app/controllers/pgbus/jobs_controller.rb', line 48 def discard_all_enqueued count = data_source.discard_all_enqueued redirect_to jobs_path, notice: t("pgbus.jobs.index.discard_all_enqueued_notice", count: count) end |
#discard_selected_enqueued ⇒ Object
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
# File 'app/controllers/pgbus/jobs_controller.rb', line 67 def discard_selected_enqueued selections = Array(params[:messages]).filter_map do |s| next unless s.respond_to?(:[]) queue_name = s[:queue_name] msg_id = s[:msg_id] next if queue_name.blank? || msg_id.blank? { queue_name: queue_name, msg_id: msg_id } end if selections.empty? redirect_to jobs_path, alert: t("pgbus.jobs.index.none_selected") return end count = 0 selections.each do |sel| count += 1 if data_source.discard_job(sel[:queue_name], sel[:msg_id]) end redirect_to jobs_path, notice: t("pgbus.jobs.index.discarded_selected", count: count) end |
#discard_selected_failed ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'app/controllers/pgbus/jobs_controller.rb', line 53 def discard_selected_failed ids = Array(params[:ids]).map(&:to_i).reject(&:zero?) if ids.empty? redirect_to jobs_path, alert: t("pgbus.jobs.index.none_selected") return end count = 0 ids.each do |id| count += 1 if data_source.discard_failed_event(id) end redirect_to jobs_path, notice: t("pgbus.jobs.index.discarded_selected", count: count) end |
#index ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 |
# File 'app/controllers/pgbus/jobs_controller.rb', line 5 def index if params[:frame] == "failed" @failed = data_source.failed_events(page: page_param, per_page: per_page) render_frame("pgbus/jobs/failed_table") elsif params[:frame] == "enqueued" @jobs = params[:status] == "failed" ? [] : data_source.jobs(queue_name: params[:queue], page: page_param, per_page: per_page) render_frame("pgbus/jobs/enqueued_table") else @jobs = params[:status] == "failed" ? [] : data_source.jobs(queue_name: params[:queue], page: page_param, per_page: per_page) @failed = data_source.failed_events(page: page_param, per_page: per_page) end end |
#retry ⇒ Object
22 23 24 25 26 27 28 |
# File 'app/controllers/pgbus/jobs_controller.rb', line 22 def retry if data_source.retry_failed_event(params[:id]) redirect_to jobs_path, notice: "Job re-enqueued." else redirect_to jobs_path, alert: "Could not retry job." end end |
#retry_all ⇒ Object
38 39 40 41 |
# File 'app/controllers/pgbus/jobs_controller.rb', line 38 def retry_all count = data_source.retry_all_failed redirect_to jobs_path, notice: "Re-enqueued #{count} jobs." end |
#show ⇒ Object
18 19 20 |
# File 'app/controllers/pgbus/jobs_controller.rb', line 18 def show @job = data_source.failed_event(params[:id]) end |