Class: Gem::StreamUI::SimpleProgressReporter
Relationships & Source Files | |
Super Chains via Extension / Inclusion / Inheritance | |
Instance Chain:
|
|
Inherits: | Object |
Defined in: | lib/rubygems/user_interaction.rb |
Overview
A basic dotted progress reporter.
Class Method Summary
-
.new(out_stream, size, initial_message, terminal_message = "complete") ⇒ SimpleProgressReporter
constructor
Creates a new progress reporter that will write to
out_stream
forsize
items.
Instance Attribute Summary
-
#count
readonly
The number of progress items counted so far.
::Gem::DefaultUserInteraction - Included
Instance Method Summary
-
#done
Prints out the terminal message.
-
#updated(message)
Prints out a dot and ignores
message
.
::Gem::DefaultUserInteraction - Included
Constructor Details
.new(out_stream, size, initial_message, terminal_message = "complete") ⇒ SimpleProgressReporter
Creates a new progress reporter that will write to out_stream
for size
items. Shows the given initial_message
when progress starts and the terminal_message
when it is complete.
# File 'lib/rubygems/user_interaction.rb', line 458
def initialize(out_stream, size, , = "complete") @out = out_stream @total = size @count = 0 @terminal_message = @out.puts end
Instance Attribute Details
#count (readonly)
The number of progress items counted so far.
# File 'lib/rubygems/user_interaction.rb', line 451
attr_reader :count
Instance Method Details
#done
Prints out the terminal message.
# File 'lib/rubygems/user_interaction.rb', line 480
def done @out.puts "\n#{@terminal_message}" end
#updated(message)
Prints out a dot and ignores message
.
# File 'lib/rubygems/user_interaction.rb', line 471
def updated( ) @count += 1 @out.print "." @out.flush end