Class: LibGems::StreamUI::SimpleProgressReporter

Inherits:
Object
  • Object
show all
Includes:
DefaultUserInteraction
Defined in:
lib/libgems/user_interaction.rb

Overview

A basic dotted progress reporter.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from DefaultUserInteraction

ui, #ui, ui=, #ui=, use_ui, #use_ui

Constructor Details

#initialize(out_stream, size, initial_message, terminal_message = "complete") ⇒ SimpleProgressReporter

Returns a new instance of SimpleProgressReporter.



352
353
354
355
356
357
358
359
360
# File 'lib/libgems/user_interaction.rb', line 352

def initialize(out_stream, size, initial_message,
               terminal_message = "complete")
  @out = out_stream
  @total = size
  @count = 0
  @terminal_message = terminal_message

  @out.puts initial_message
end

Instance Attribute Details

#countObject (readonly)

Returns the value of attribute count.



350
351
352
# File 'lib/libgems/user_interaction.rb', line 350

def count
  @count
end

Instance Method Details

#doneObject

Prints out the terminal message.



374
375
376
# File 'lib/libgems/user_interaction.rb', line 374

def done
  @out.puts "\n#{@terminal_message}"
end

#updated(message) ⇒ Object

Prints out a dot and ignores message.



365
366
367
368
369
# File 'lib/libgems/user_interaction.rb', line 365

def updated(message)
  @count += 1
  @out.print "."
  @out.flush
end