class Gitrob::CLI::ProgressBar

Public Class Methods

new(message, options={}) click to toggle source
# File lib/gitrob/cli/progress_bar.rb, line 4
def initialize(message, options={})
  @options = {
    :format =>
      "#{'[*]'.light_blue} %t %c/%C %B %j% %e",
    :progress_mark => "|".light_blue,
    :remainder_mark => "|"
  }.merge(options)
  @mutex = Mutex.new
  Gitrob::CLI.info(message)
  @progress_bar = ::ProgressBar.create(@options)
end

Public Instance Methods

error(message) click to toggle source
# File lib/gitrob/cli/progress_bar.rb, line 24
def error(message)
  progress_bar.log("#{'[!]'.light_red} #{message}")
end
finish() click to toggle source
# File lib/gitrob/cli/progress_bar.rb, line 16
def finish
  progress_bar.finish
end
info(message) click to toggle source
# File lib/gitrob/cli/progress_bar.rb, line 20
def info(message)
  progress_bar.log("#{'[+]'.light_blue} #{message}")
end
method_missing(method, *args, &block) click to toggle source
Calls superclass method
# File lib/gitrob/cli/progress_bar.rb, line 32
def method_missing(method, *args, &block)
  if progress_bar.respond_to?(method)
    progress_bar.send(method, *args, &block)
  else
    super
  end
end
warn(message) click to toggle source
# File lib/gitrob/cli/progress_bar.rb, line 28
def warn(message)
  progress_bar.log("#{'[!]'.light_yellow} #{message}")
end

Private Instance Methods

progress_bar() click to toggle source
# File lib/gitrob/cli/progress_bar.rb, line 42
def progress_bar
  @mutex.synchronize { @progress_bar }
end