class Kramdown::PlantUml::Logger

Logs stuff

Public Class Methods

init() click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 53
def init
  inner = nil

  begin
    require 'jekyll'
    inner = Jekyll.logger
  rescue LoadError
    inner = ConsoleLogger.new level
  end

  Logger.new inner
end
level() click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 66
def level
  @level ||= level_from_env
end
new(logger) click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 9
def initialize(logger)
  raise ArgumentError, 'logger cannot be nil' if logger.nil?
  raise ArgumentError, 'logger must respond to #debug' unless logger.respond_to? :debug
  raise ArgumentError, 'logger must respond to #info' unless logger.respond_to? :info
  raise ArgumentError, 'logger must respond to #warn' unless logger.respond_to? :warn
  raise ArgumentError, 'logger must respond to #error' unless logger.respond_to? :error

  @logger = logger
end

Private Class Methods

level_from_env() click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 72
def level_from_env
  return :debug if BoolEnv.new('DEBUG').true?
  return :debug if BoolEnv.new('VERBOSE').true?

  :warn
end

Public Instance Methods

debug(message) click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 19
def debug(message)
  @logger.debug message
end
debug?() click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 44
def debug?
  self.class.level == :debug
end
debug_with_prefix(prefix, multiline_string) click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 23
def debug_with_prefix(prefix, multiline_string)
  return if multiline_string.nil? || multiline_string.empty?

  lines = multiline_string.lines
  lines.each do |line|
    @logger.debug "#{prefix}#{line.rstrip}"
  end
end
error(message) click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 40
def error(message)
  @logger.error message
end
info(message) click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 32
def info(message)
  @logger.info message
end
level() click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 48
def level
  @level ||= level_from_logger || self.class.env
end
warn(message) click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 36
def warn(message)
  @logger.warn message
end

Private Instance Methods

level_from_logger() click to toggle source
# File lib/kramdown-plantuml/logger.rb, line 82
def level_from_logger
  return @logger.level if @logger.respond_to? :level

  nil
end