Class: Converter::Logger

Inherits:
Object
  • Object
show all
Defined in:
lib/tasks/converter/logger.rb

Instance Method Summary collapse

Constructor Details

#initialize(log_level) ⇒ Logger

Returns a new instance of Logger.



3
4
5
# File 'lib/tasks/converter/logger.rb', line 3

def initialize(log_level)
  @log_level = log_level || 3
end

Instance Method Details

#bold(s) ⇒ Object



59
# File 'lib/tasks/converter/logger.rb', line 59

def bold(s); colorize(s, 1); end

#colorize(text, color_code) ⇒ Object

Colorize functions



51
52
53
# File 'lib/tasks/converter/logger.rb', line 51

def colorize(text, color_code)
  "\e[#{color_code}m#{text}\e[0m"
end

#cyan(s) ⇒ Object



56
# File 'lib/tasks/converter/logger.rb', line 56

def cyan(s); colorize(s, 36); end

#green(s) ⇒ Object



58
# File 'lib/tasks/converter/logger.rb', line 58

def green(s); colorize(s, 32); end

#log_file_info(s) ⇒ Object



11
12
13
# File 'lib/tasks/converter/logger.rb', line 11

def log_file_info(s)
  puts "    #{magenta s}" if log_level?(:all)
end

#log_level?(level) ⇒ Boolean

Log levels

0 is silent
1 is status
2 is processing
3 is everything

Returns:

  • (Boolean)


37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/tasks/converter/logger.rb', line 37

def log_level?(level)
  case level
  when :silent
    @log_level == 0
  when :status
    @log_level >= 1
  when :processing
    @log_level >= 2
  when :all
    @log_level >= 3
  end
end

#log_processed(name) ⇒ Object



23
24
25
# File 'lib/tasks/converter/logger.rb', line 23

def log_processed(name)
  puts green "    #{name}" if log_level?(:processing)
end

#log_processing(name) ⇒ Object



19
20
21
# File 'lib/tasks/converter/logger.rb', line 19

def log_processing(name)
  puts yellow "  #{File.basename(name)}" if log_level?(:processing)
end

#log_status(status) ⇒ Object



7
8
9
# File 'lib/tasks/converter/logger.rb', line 7

def log_status(status)
  puts bold status if log_level?(:status)
end

#log_transform(*args, from: caller[1][/`.*'/][1..-2].sub(/^block in /, '')) ⇒ Object



15
16
17
# File 'lib/tasks/converter/logger.rb', line 15

def log_transform(*args, from: caller[1][/`.*'/][1..-2].sub(/^block in /, ''))
  puts "    #{cyan from}#{cyan ": #{args * ', '}" unless args.empty?}" if log_level?(:all)
end

#magenta(s) ⇒ Object



55
# File 'lib/tasks/converter/logger.rb', line 55

def magenta(s); colorize(s, 35); end

#puts(*args) ⇒ Object Also known as: log



27
28
29
# File 'lib/tasks/converter/logger.rb', line 27

def puts(*args)
  STDOUT.puts *args unless log_level?(:silent)
end

#yellow(s) ⇒ Object



57
# File 'lib/tasks/converter/logger.rb', line 57

def yellow(s); colorize(s, 33); end