Class: QueuedMail::DeliveryMethod

Inherits:
Object
  • Object
show all
Defined in:
lib/queued_mail/delivery_method.rb

Instance Method Summary collapse

Constructor Details

#initialize(options) ⇒ DeliveryMethod

Returns a new instance of DeliveryMethod.



3
4
5
# File 'lib/queued_mail/delivery_method.rb', line 3

def initialize(options)
  @options = options
end

Instance Method Details

#deliver!(mail) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/queued_mail/delivery_method.rb', line 7

def deliver!(mail)
  message = QueuedMail::Message.new(:source => mail.to_s)
  
  addresses = mail.bcc
  if addresses
    message.bcc_addresses = addresses.map{|address| address.to_s.scan(/^.*?([a-zA-Z0-9._+-]+@[a-zA-Z0-9._-]+?)(?![a-zA-Z0-9._-]).*$/).flatten.first }.uniq.compact.join(', ')
  end
    
  message.save
  enqueue(message.id)
end