class Mail::LoggerDelivery
Attributes
Public Class Methods
Source
# File lib/mail/network/delivery_methods/logger_delivery.rb, line 7 def initialize(settings) @settings = settings @logger = settings.fetch(:logger) { default_logger } @severity = derive_severity(settings[:severity]) end
Public Instance Methods
Source
# File lib/mail/network/delivery_methods/logger_delivery.rb, line 13 def deliver!(mail) logger.log(severity) { Mail::SmtpEnvelope.new(mail).message } end
Private Instance Methods
Source
# File lib/mail/network/delivery_methods/logger_delivery.rb, line 18 def default_logger require 'logger' ::Logger.new($stdout) end
Source
# File lib/mail/network/delivery_methods/logger_delivery.rb, line 23 def derive_severity(severity) case severity when nil Logger::INFO when Integer severity else Logger.const_get(severity.to_s.upcase) end end