class Caffeinate::ActionMailer::Interceptor

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

Public Class Methods

delivering_email(message) click to toggle source
# 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