class AppMail::MailGem::DeliveryMethod

Public Class Methods

new(settings) click to toggle source
# File lib/app_mail/mail_gem/delivery_method.rb, line 7
def initialize(settings)
  @settings = settings
end

Public Instance Methods

deliver!(message) click to toggle source
# File lib/app_mail/mail_gem/delivery_method.rb, line 15
def deliver!(message)
  client.send_raw_message do |m|
    m.mail_from(message.from.first)
    [message.to, message.cc, message.bcc].flatten.compact.uniq.each do |address|
      m.rcpt_to(address)
    end
    m.data(message.to_s)
  end
end
settings() click to toggle source
# File lib/app_mail/mail_gem/delivery_method.rb, line 11
def settings
  @settings
end

Private Instance Methods

client() click to toggle source
# File lib/app_mail/mail_gem/delivery_method.rb, line 27
def client
  @client ||= AppMail::Client.new(@settings[:host] || "api.appmail.io", @settings[:server_key] || ENV['APPMAIL_KEY'])
end