Class: Harbor::MailServers::Sendmail

Inherits:
Abstract
  • Object
show all
Defined in:
lib/harbor/mail_servers/sendmail.rb

Instance Method Summary collapse

Constructor Details

#initialize(config = {}) ⇒ Sendmail

Returns a new instance of Sendmail.



4
5
6
# File 'lib/harbor/mail_servers/sendmail.rb', line 4

def initialize(config = {})
  @sendmail = config[:sendmail] || `which sendmail`.chomp
end

Instance Method Details

#deliver(message_or_messages) ⇒ Object



8
9
10
11
12
13
14
15
16
# File 'lib/harbor/mail_servers/sendmail.rb', line 8

def deliver(message_or_messages)
  messages = Array === message_or_messages ? message_or_messages : [message_or_messages]

  messages.each do |message|
    sendmail = ::IO.popen("#{@sendmail} -i -t", "w+")
    sendmail.puts message.to_s
    sendmail.close
  end
end