Class: Console::Compatible::Logger

Inherits:
Logger
  • Object
show all
Defined in:
lib/console/compatible/logger.rb

Defined Under Namespace

Classes: LogDevice

Instance Method Summary collapse

Constructor Details

#initialize(subject, output) ⇒ Logger

Returns a new instance of Logger.



49
50
51
52
53
54
# File 'lib/console/compatible/logger.rb', line 49

def initialize(subject, output)
  super(nil)
  
  @progname = subject
  @logdev = LogDevice.new(subject, output)
end

Instance Method Details

#add(severity, message = nil, progname = nil) ⇒ Object



56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# File 'lib/console/compatible/logger.rb', line 56

def add(severity, message = nil, progname = nil)
  severity ||= UNKNOWN
  
  if @logdev.nil? or severity < level
    return true
  end
  
  if progname.nil?
    progname = @progname
  end
  
  if message.nil?
    if block_given?
      message = yield
    else
      message = progname
      progname = @progname
    end
  end
  
  @logdev.call(
    progname, message,
    severity: format_severity(severity)
  )
  
  return true
end

#format_severity(value) ⇒ Object



84
85
86
# File 'lib/console/compatible/logger.rb', line 84

def format_severity(value)
  super.downcase
end