Sha256: e6f4224518d96087fac7549eb30ee062a6827de23a91d615dfc11c04c794d320
Contents?: true
Size: 1.51 KB
Versions: 1
Compression:
Stored size: 1.51 KB
Contents
require "google_http_actionmailer/version" require "google_http_actionmailer/railtie" if defined? Rails require "base64" require "google/apis/gmail_v1" module GoogleHttpActionmailer class DeliveryMethod attr_reader :service attr_reader :message_options attr_reader :delivery_options def initialize(params) @service = Google::Apis::GmailV1::GmailService.new @service.authorization = params[:authorization] @service.request_options.merge params[:request_options] unless params[:client_options].nil? @service.client_options.members.each do |opt| opt = opt.to_sym unless params[:client_options][opt].nil? @service.client_options[opt] = params[:client_options][opt] end end end @message_options = params[:message_options] || {} @delivery_options = params[:delivery_options] || {} end def deliver!(mail) user_id = message_options[:user_id] || 'me' message = Google::Apis::GmailV1::Message.new( raw: mail.to_s, thread_id: mail['Thread-ID'] ) before_send = delivery_options[:before_send] if before_send && before_send.respond_to?(:call) before_send.call(mail, message) end message = service.send_user_message( user_id, message, message_options ) after_send = delivery_options[:after_send] if after_send && after_send.respond_to?(:call) after_send.call(mail, message) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
google-http-actionmailer-0.2.0 | lib/google_http_actionmailer.rb |