Class: SidekiqSimpleDelay::SimpleDelayedMailer
- Inherits:
-
Object
- Object
- SidekiqSimpleDelay::SimpleDelayedMailer
- Includes:
- Sidekiq::Worker
- Defined in:
- lib/sidekiq_simple_delay/delayed_mailer.rb
Overview
Worker that handles the simple_delayed functionality for ActionMailers
Instance Method Summary collapse
Instance Method Details
#perform(args) ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/sidekiq_simple_delay/delayed_mailer.rb', line 10 def perform(args) target_klass = Object.const_get(args.fetch('target_klass')) method_name = args['m'] method_args = args['args'] msg = target_klass.__send__(method_name, *method_args) # The email method can return nil, which causes ActionMailer to return # an undeliverable empty message. raise "#{target.name}##{method_name} returned an undeliverable mail object" unless msg deliver(msg) end |