class Flickrage::Log
Shared logger
Attributes
buffer[W]
instance[W]
quiet[RW]
shell[R]
verbose[RW]
Public Class Methods
new(options = {})
click to toggle source
# File lib/flickrage/log.rb, line 12 def initialize(options = {}) @verbose = Flickrage.config.verbose @quiet = Flickrage.config.quiet options.each { |key, option| instance_variable_set(:"@#{key}", option) } instance.level = Flickrage.config.logger_level if instance end
Public Instance Methods
add_padding()
click to toggle source
# File lib/flickrage/log.rb, line 54 def add_padding shell.say_status('', '') if shell end
ask(statement, color: :green, path: false)
click to toggle source
# File lib/flickrage/log.rb, line 50 def ask(statement, color: :green, path: false) shell.ask(statement, color, path: path) if shell end
buffer()
click to toggle source
# File lib/flickrage/log.rb, line 23 def buffer @buffer ||= %w() end
close()
click to toggle source
# File lib/flickrage/log.rb, line 31 def close instance.close if instance end
instance()
click to toggle source
# File lib/flickrage/log.rb, line 19 def instance @instance ||= Flickrage.config.logger end
log(severity, message = nil, progname = nil, &block)
click to toggle source
# File lib/flickrage/log.rb, line 58 def log(severity, message = nil, progname = nil, &block) buffer << message instance.add(severity, message, progname, &block) if instance.respond_to?(:add) say(message, color(severity)) unless print?(severity) end
print_table(*args)
click to toggle source
# File lib/flickrage/log.rb, line 45 def print_table(*args) args[0]&.each { |row| instance.info(row) } if instance shell.print_table(*args) if shell end
shell=(shell)
click to toggle source
# File lib/flickrage/log.rb, line 27 def shell=(shell) @shell = shell unless quiet end
Protected Instance Methods
color(severity)
click to toggle source
# File lib/flickrage/log.rb, line 75 def color(severity) case severity when 0 :white when 3 :red when 2 :yellow else :green end end
print?(type)
click to toggle source
# File lib/flickrage/log.rb, line 67 def print?(type) (type == Logger::DEBUG && !verbose) || quiet end
say(message, color)
click to toggle source
# File lib/flickrage/log.rb, line 71 def say(message, color) shell.say message, color if shell end