Class: SolidObserver::ExecutionPresenter

Inherits:
Object
  • Object
show all
Defined in:
app/presenters/solid_observer/execution_presenter.rb

Constant Summary collapse

STATUS_MAP =
{
  "SolidQueue::ReadyExecution" => "ready",
  "SolidQueue::ScheduledExecution" => "scheduled",
  "SolidQueue::ClaimedExecution" => "claimed",
  "SolidQueue::FailedExecution" => "failed"
}.freeze

Instance Method Summary collapse

Constructor Details

#initialize(execution) ⇒ ExecutionPresenter

Returns a new instance of ExecutionPresenter.



12
13
14
# File 'app/presenters/solid_observer/execution_presenter.rb', line 12

def initialize(execution)
  @execution = execution
end

Instance Method Details

#jobObject



20
21
22
# File 'app/presenters/solid_observer/execution_presenter.rb', line 20

def job
  @execution.job
end

#priorityObject



31
32
33
34
35
36
# File 'app/presenters/solid_observer/execution_presenter.rb', line 31

def priority
  responded, value = value_from(@execution, :priority)
  return value if responded

  value_from(job, :priority).last
end

#queue_nameObject



24
25
26
27
28
29
# File 'app/presenters/solid_observer/execution_presenter.rb', line 24

def queue_name
  responded, value = value_from(@execution, :queue_name)
  return value if responded

  value_from(job, :queue_name).last
end

#statusObject



16
17
18
# File 'app/presenters/solid_observer/execution_presenter.rb', line 16

def status
  STATUS_MAP.fetch(@execution.class.name, "unknown")
end

#to_modelObject



38
39
40
# File 'app/presenters/solid_observer/execution_presenter.rb', line 38

def to_model
  @execution
end