Class: Caffeinate::ActionMailer::Interceptor

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

Class Method Summary collapse

Class Method Details

.delivering_email(message) ⇒ Object

Handles ‘before_send` callbacks for a `Caffeinate::Dripper`



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

def self.delivering_email(message)
  mailing = Thread.current[::Caffeinate::Mailing::CURRENT_THREAD_KEY]
  return unless mailing

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