Class: Gem::StreamUI::ThreadedDownloadReporter
- Inherits:
-
Object
- Object
- Gem::StreamUI::ThreadedDownloadReporter
- Defined in:
- lib/rubygems/user_interaction.rb
Overview
A progress reporter that behaves nicely with threaded downloading.
Constant Summary collapse
- MUTEX =
Thread::Mutex.new
Instance Attribute Summary collapse
-
#file_name ⇒ Object
readonly
The current file name being displayed.
Instance Method Summary collapse
-
#done ⇒ Object
Indicates the download is complete.
-
#fetch(file_name, *args) ⇒ Object
Tells the download reporter that the
file_name
is being fetched. -
#initialize(out_stream, *args) ⇒ ThreadedDownloadReporter
constructor
Creates a new threaded download reporter that will display on
out_stream
. -
#update(bytes) ⇒ Object
Updates the threaded download reporter for the given number of
bytes
.
Constructor Details
#initialize(out_stream, *args) ⇒ ThreadedDownloadReporter
Creates a new threaded download reporter that will display on out_stream
. The other arguments are ignored.
553 554 555 556 |
# File 'lib/rubygems/user_interaction.rb', line 553 def initialize(out_stream, *args) @file_name = nil @out = out_stream end |
Instance Attribute Details
#file_name ⇒ Object (readonly)
The current file name being displayed
547 548 549 |
# File 'lib/rubygems/user_interaction.rb', line 547 def file_name @file_name end |
Instance Method Details
#done ⇒ Object
Indicates the download is complete.
579 580 581 |
# File 'lib/rubygems/user_interaction.rb', line 579 def done # Do nothing. end |
#fetch(file_name, *args) ⇒ Object
Tells the download reporter that the file_name
is being fetched. The other arguments are ignored.
562 563 564 565 566 567 |
# File 'lib/rubygems/user_interaction.rb', line 562 def fetch(file_name, *args) if @file_name.nil? @file_name = file_name locked_puts "Fetching #{@file_name}" end end |
#update(bytes) ⇒ Object
Updates the threaded download reporter for the given number of bytes
.
572 573 574 |
# File 'lib/rubygems/user_interaction.rb', line 572 def update(bytes) # Do nothing. end |