Skip to content

Commit

Permalink
Merge ad90c8b into 5b08ccd
Browse files Browse the repository at this point in the history
  • Loading branch information
hqm42 committed Jun 19, 2014
2 parents 5b08ccd + ad90c8b commit ed3d1e9
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 6 deletions.
15 changes: 15 additions & 0 deletions lib/delayed/performable_mail.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
require 'mail'

module Delayed
class PerformableMail < PerformableMethod
def initialize(raw_mail, method_name, args)
super(Mail.new(raw_mail), method_name, args)
end
end

module DelayMailMessage
def delay(options = {})
DelayProxy.new(PerformableMail, self.encoded, options)
end
end
end
6 changes: 0 additions & 6 deletions lib/delayed/performable_mailer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,3 @@ def delay(options = {})
end
end
end

Mail::Message.class_eval do
def delay(*args)
raise RuntimeError, "Use MyMailer.delay.mailer_action(args) to delay sending of emails."
end
end
1 change: 1 addition & 0 deletions lib/delayed/railtie.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ class Railtie < Rails::Railtie
initializer :after_initialize do
ActiveSupport.on_load(:action_mailer) do
ActionMailer::Base.extend(Delayed::DelayMail)
Mail::Message.extend(Delayed::DelayMailMessage)
end
end

Expand Down
1 change: 1 addition & 0 deletions lib/delayed_job.rb
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
if defined?(ActionMailer)
require 'action_mailer/version'
require 'delayed/performable_mailer'
require 'delayed/performable_mail'
end

require 'delayed/yaml_ext'
Expand Down
1 change: 1 addition & 0 deletions spec/helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@

# Add this to simulate Railtie initializer being executed
ActionMailer::Base.extend(Delayed::DelayMail)
Mail::Message.extend(Delayed::DelayMailMessage)


# Used to test interactions between DJ and an ORM
Expand Down

0 comments on commit ed3d1e9

Please sign in to comment.