Class: ForemanInventoryUpload::Async::ProgressOutput
- Inherits:
-
Object
- Object
- ForemanInventoryUpload::Async::ProgressOutput
- Defined in:
- lib/foreman_inventory_upload/async/progress_output.rb
Class Method Summary collapse
Instance Method Summary collapse
- #close ⇒ Object
- #full_output ⇒ Object
-
#initialize(label, mode) ⇒ ProgressOutput
constructor
A new instance of ProgressOutput.
- #status ⇒ Object
- #status=(status) ⇒ Object
- #write_line(line) ⇒ Object
Constructor Details
#initialize(label, mode) ⇒ ProgressOutput
Returns a new instance of ProgressOutput.
13 14 15 16 |
# File 'lib/foreman_inventory_upload/async/progress_output.rb', line 13 def initialize(label, mode) @label = label @mode = mode end |
Class Method Details
.get(label) ⇒ Object
4 5 6 |
# File 'lib/foreman_inventory_upload/async/progress_output.rb', line 4 def self.get(label) ProgressOutput.new(label, :reader) end |
.register(label) ⇒ Object
8 9 10 11 |
# File 'lib/foreman_inventory_upload/async/progress_output.rb', line 8 def self.register(label) TaskOutputLine.where(label: @label).delete_all ProgressOutput.new(label, :writer) end |
Instance Method Details
#close ⇒ Object
26 27 |
# File 'lib/foreman_inventory_upload/async/progress_output.rb', line 26 def close end |
#full_output ⇒ Object
18 19 20 |
# File 'lib/foreman_inventory_upload/async/progress_output.rb', line 18 def full_output TaskOutputLine.where(label: @label).order(:created_at).pluck(:line).join("\n") end |
#status ⇒ Object
29 30 31 |
# File 'lib/foreman_inventory_upload/async/progress_output.rb', line 29 def status TaskOutputStatus.where(label: @label).pluck(:status).first || '' end |
#status=(status) ⇒ Object
33 34 35 |
# File 'lib/foreman_inventory_upload/async/progress_output.rb', line 33 def status=(status) TaskOutputStatus.upsert({ label: @label, status: status }, unique_by: :label) end |
#write_line(line) ⇒ Object
22 23 24 |
# File 'lib/foreman_inventory_upload/async/progress_output.rb', line 22 def write_line(line) TaskOutputLine.create!(label: @label, line: line) end |