Class: Caffeinate::ActionMailer::Interceptor

Inherits:
Object
  • Object
show all
Defined in:
lib/caffeinate/action_mailer/interceptor.rb

Overview

Handles the evaluation of a drip against a mailing to determine if it ultimately gets delivered. Also invokes the ‘before_send` callbacks.

Class Method Summary collapse

Class Method Details

.delivering_email(message) ⇒ Object



8
9
10
11
12
13
14
15
# File 'lib/caffeinate/action_mailer/interceptor.rb', line 8

def self.delivering_email(message)
  mailing = message.caffeinate_mailing
  return unless mailing

  mailing.caffeinate_campaign.to_dripper.run_callbacks(:before_send, mailing, message)
  drip = mailing.drip
  message.perform_deliveries = drip.enabled?(mailing)
end