# class Gem::StreamUI::VerboseProgressReporter

A progress reporter that prints out messages about the current progress.

### Attributes

count[R]

The number of progress items counted so far.

### Public Class Methods

new(out_stream, size, initial_message, terminal_message = 'complete') click to toggle source

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 474
    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

### Public Instance Methods

done() click to toggle source

Prints out the terminal message.

    # File lib/rubygems/user_interaction.rb, line 495
    def done
      @out.puts @terminal_message
    end

updated(message) click to toggle source

Prints out the position relative to the total and the `message`.

    # File lib/rubygems/user_interaction.rb, line 487
    def updated(message)
      @count += 1
      @out.puts "#{@count}/#{@total}: #{message}"
    end