class Translatomatic::Logger
Logging
Attributes
progressbar[RW]
@return [ProgressBar] A progress bar
Public Class Methods
new()
click to toggle source
@return [Translatomatic::Logger] create a new logger instance
# File lib/translatomatic/logger.rb, line 10 def initialize @logger = ::Logger.new(STDOUT) @logger.level = ENV['DEBUG'] ? ::Logger::DEBUG : ::Logger::INFO @logger.formatter = proc do |_severity, _datetime, _progname, msg| "#{msg}\n" end end
Public Instance Methods
finish()
click to toggle source
Called at the end of translatomatic to clear the progress bar.
# File lib/translatomatic/logger.rb, line 19 def finish @finished ||= begin @progressbar.finish if @progressbar true end end
Private Instance Methods
handle_logger_method(name, args)
click to toggle source
# File lib/translatomatic/logger.rb, line 40 def handle_logger_method(name, args) @progressbar.clear if @progressbar @logger.send(name, *args) refresh_progress_bar end
method_missing(name, *args)
click to toggle source
Calls superclass method
# File lib/translatomatic/logger.rb, line 32 def method_missing(name, *args) if @logger.respond_to?(name) handle_logger_method(name, args) else super end end
refresh_progress_bar()
click to toggle source
# File lib/translatomatic/logger.rb, line 46 def refresh_progress_bar return unless @progressbar && !@progressbar.stopped? @progressbar.refresh(force: true) end
respond_to_missing?(name, include_private = false)
click to toggle source
Calls superclass method
# File lib/translatomatic/logger.rb, line 28 def respond_to_missing?(name, include_private = false) @logger.respond_to?(name, include_private) || super end