Class: RoundhouseUi::Backends::SolidQueue::Entry

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

Overview

Wraps a Solid Queue execution + its job in the SortedEntry-like interface the views expect (klass / jid / args / item / at / queue / retry / delete).

Instance Method Summary collapse

Constructor Details

#initialize(execution) ⇒ Entry

Returns a new instance of Entry.



87
88
89
90
# File 'lib/roundhouse_ui/backends/solid_queue.rb', line 87

def initialize(execution)
  @execution = execution
  @job = execution.job
end

Instance Method Details

#argsObject



95
# File 'lib/roundhouse_ui/backends/solid_queue.rb', line 95

def args  = active_job_args

#atObject



96
# File 'lib/roundhouse_ui/backends/solid_queue.rb', line 96

def at    = @execution.try(:scheduled_at) || @execution.try(:created_at)

#deleteObject



109
# File 'lib/roundhouse_ui/backends/solid_queue.rb', line 109

def delete = @execution.destroy

#itemObject



98
99
100
101
102
103
104
105
106
# File 'lib/roundhouse_ui/backends/solid_queue.rb', line 98

def item
  err = (@execution.respond_to?(:error) && @execution.error) || {}
  {
    "class" => klass, "args" => args, "queue" => queue,
    "error_class"     => err["exception_class"],
    "error_message"   => err["message"],
    "error_backtrace" => err["backtrace"]
  }
end

#jidObject



92
# File 'lib/roundhouse_ui/backends/solid_queue.rb', line 92

def jid   = @execution.job_id.to_s

#klassObject



93
# File 'lib/roundhouse_ui/backends/solid_queue.rb', line 93

def klass = @job&.class_name

#queueObject



94
# File 'lib/roundhouse_ui/backends/solid_queue.rb', line 94

def queue = @job&.queue_name

#retryObject



108
# File 'lib/roundhouse_ui/backends/solid_queue.rb', line 108

def retry = @execution.retry if