Class: HttpMailer::SendGridServiceHandler

Inherits:
ServiceHandler show all
Defined in:
lib/http_mailer/sendgrid/sendgrid_service_handler.rb

Instance Attribute Summary collapse

Attributes inherited from ServiceHandler

#service_api, #service_configuration

Instance Method Summary collapse

Methods inherited from ServiceHandler

#configured?

Constructor Details

#initialize(settings) ⇒ SendGridServiceHandler

Returns a new instance of SendGridServiceHandler.



5
6
7
8
# File 'lib/http_mailer/sendgrid/sendgrid_service_handler.rb', line 5

def initialize(settings)
  super(settings)
  @service_api = ::HttpMailer::SendGridServiceApi.new(self.service_configuration.settings.host)
end

Instance Attribute Details

#sevice_apiObject

Returns the value of attribute sevice_api.



3
4
5
# File 'lib/http_mailer/sendgrid/sendgrid_service_handler.rb', line 3

def sevice_api
  @sevice_api
end

Instance Method Details

#send_message(from, to, subject, text, from_name = '', to_name = '') ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/http_mailer/sendgrid/sendgrid_service_handler.rb', line 10

def send_message(from, to, subject, text, from_name='', to_name='')
  ::RestClient.post self.service_api.send_messages_url,
    :api_user => self.service_configuration.settings.api_user,
    :api_key => self.service_configuration.settings.api_key,
    :from => from,
    :fromname => from_name,
    :to => to,
    :toname => to_name,
    :subject => subject,
    :text => text
rescue => e
  puts e.inspect
  e.response
end