Class: Bosh::Cli::TaskTracking::EventLogRenderer
- Inherits:
-
TaskLogRenderer
- Object
- TaskLogRenderer
- Bosh::Cli::TaskTracking::EventLogRenderer
- Extended by:
- Forwardable
- Defined in:
- lib/cli/task_tracking/event_log_renderer.rb
Defined Under Namespace
Classes: InvalidEvent
Instance Attribute Summary
Attributes inherited from TaskLogRenderer
Instance Method Summary collapse
- #add_output(output) ⇒ Object
- #add_raw_output ⇒ Object
- #finish(state) ⇒ Object
-
#initialize ⇒ EventLogRenderer
constructor
A new instance of EventLogRenderer.
Methods inherited from TaskLogRenderer
create_for_log_type, #duration_known?, #refresh
Constructor Details
#initialize ⇒ EventLogRenderer
Returns a new instance of EventLogRenderer.
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/cli/task_tracking/event_log_renderer.rb', line 11 def initialize super @printer = SmartWhitespacePrinter.new @total_duration = TotalDuration.new presenter = StageCollectionPresenter.new(@printer) @stage_collection = StageCollection.new( stage_started: presenter.method(:start_stage), stage_finished: presenter.method(:finish_stage), stage_failed: presenter.method(:fail_stage), task_started: presenter.method(:start_task), task_finished: presenter.method(:finish_task), task_failed: presenter.method(:fail_task), ) end |
Instance Method Details
#add_output(output) ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/cli/task_tracking/event_log_renderer.rb', line 32 def add_output(output) output.to_s.split("\n").each do |line| begin event = parse_event(line) add_event(event) if event rescue InvalidEvent => e @printer.print(:line_around, "Received invalid event: #{e.}".make_red) end end add_raw_output(@printer.output) end |
#add_raw_output ⇒ Object
30 |
# File 'lib/cli/task_tracking/event_log_renderer.rb', line 30 alias_method :add_raw_output, :add_output |
#finish(state) ⇒ Object
45 46 47 48 49 |
# File 'lib/cli/task_tracking/event_log_renderer.rb', line 45 def finish(state) @printer.finish add_raw_output(@printer.output) super end |