Class: ArgumentMergerLogger

Inherits:
ActiveSupport::BufferedLogger
  • Object
show all
Defined in:
lib/quarter_system/argumentation/errors.rb

Overview

Error classes.

Constant Summary collapse

SEVERITIES =
Severity.constants.inject([]) { |arr, c| arr[Severity.const_get(c)] = c; arr }

Instance Method Summary collapse

Instance Method Details

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



10
11
12
13
14
15
16
17
# File 'lib/quarter_system/argumentation/errors.rb', line 10

def add(severity, message=nil, progname=nil, &block)
  return if @level > severity
  message = (message || block.try(:call) || progname).to_s
  message = format_message(severity, Time.zone.now, progname, message)
  buffer << message
  auto_flush
  message
end

#format_message(severity, timestamp, progname, msg) ⇒ Object



6
7
8
# File 'lib/quarter_system/argumentation/errors.rb', line 6

def format_message(severity, timestamp, progname, msg)
  "(#{timestamp.to_s(:db)})[#{SEVERITIES[severity]}]: #{msg.strip}\n"
end