switch mail delivery method in rails during runtime

Viewed 6275

I'm trying to setup a rails application so that I can choose between different mail delivery methods depending on whether some condition is true or not.

So, given two delivery methods:

ActionMailer::Base.add_delivery_method :foo
ActionMailer::Base.add_delivery_method :bar

I thought I'd be able to just create an email interceptor to do something like this:

class DeliveryMethodChooser
  def self.delivering_email(message)
    if some_condition
      # code to use mail delivery method foo
    else
      # code to use mail delivery method bar
    end
  end
end

The problem though, is that I'm not sure how to actually set change what mail delivery method is used for a given message. Any ideas? Is it even possible to dynamically choose what delivery_method to use?

4 Answers
Related