Sha256: f4444b41ce54abf79fbf72bd5a08fed5a8042af071adf8e2f5be7c9d85fc14dd

Contents?: true

Size: 1.11 KB

Versions: 5

Compression:

Stored size: 1.11 KB

Contents

require_relative "version"

class Logger
  @verbose = true

  def self.set_verbose(value)
    @verbose = (value == "yes")
  end

  def self.debug(msg)
    msg = Rainbow("#{msg}").white
    puts msg if @verbose
    @logfile&.write(msg)
  end

  def self.info(msg)
    puts msg if @verbose
    @logfile&.write(msg)
  end

  def self.warn(msg)
    msg = Rainbow("[WARN] #{msg}\n").yellow.bright
    print msg if @verbose
    @logfile&.write(msg)
  end

  def self.error(msg)
    msg = Rainbow("[ERROR] #{msg}\n").red.bright
    Warning.warn msg if @verbose
    @logfile&.write(msg)
  end

  def self.verbose(msg)
    print msg if @verbose
    @logfile&.write(msg)
  end

  def self.verboseln(msg)
    verbose(msg + "\n")
  end

  def self.create(logpath)
    @logfile = File.open(logpath, "w")
    @logfile.write("=" * 50 + "\n")
    @logfile.write("Created by : #{Asker::NAME}")
    @logfile.write(" (version #{Asker::VERSION})\n")
    @logfile.write("File       : #{File.basename(logpath)}\n")
    @logfile.write("Time       : #{Time.new}\n")
    @logfile.write("=" * 50 + "\n\n")
  end

  def self.close
    @logfile.close
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
asker-tool-2.9.4 lib/asker/logger.rb
asker-tool-2.9.3 lib/asker/logger.rb
asker-tool-2.9.2 lib/asker/logger.rb
asker-tool-2.9.1 lib/asker/logger.rb
asker-tool-2.9.0 lib/asker/logger.rb