def set_adapter
if @set_adapter_and_handler then return end
@adapter = create_adapter
@set_adapter_and_handler = true
unless @logger then
if level = @log_options[:level] then
require 'logger'
case level
when :fatal
level = Logger::FATAL
when :error
level = Logger::ERROR
when :warn
level = Logger::WARN
when :info
level = Logger::INFO
else
level = Logger::DEBUG
end
if file = @log_options[:file] then
out = File.open(file, 'a+')
else
out = @log_options[:out]
end
@logger = Logger.new(out, @log_options[:shift_age] || 0,
@log_options[:shift_size] || 1048576)
@logger.progname = @log_options[:name]
else
@logger = DummyLogger.new
end
end
end