Class: ActionMailer::Balancer::DeliveryMethod

Inherits:
Object
  • Object
show all
Defined in:
lib/actionmailer/balancer/delivery_method.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(settings = {}) ⇒ DeliveryMethod

Returns a new instance of DeliveryMethod.



8
9
10
# File 'lib/actionmailer/balancer/delivery_method.rb', line 8

def initialize(settings = {})
  add_delivery_methods(settings)
end

Instance Attribute Details

#delivery_methodsObject (readonly)

Returns the value of attribute delivery_methods.



6
7
8
# File 'lib/actionmailer/balancer/delivery_method.rb', line 6

def delivery_methods
  @delivery_methods
end

#weights_sumObject (readonly)

Returns the value of attribute weights_sum.



6
7
8
# File 'lib/actionmailer/balancer/delivery_method.rb', line 6

def weights_sum
  @weights_sum
end

Instance Method Details

#deliver!(message) ⇒ Object



12
13
14
15
16
17
18
19
# File 'lib/actionmailer/balancer/delivery_method.rb', line 12

def deliver!(message)
  delivery_method = choose_delivery_method
  message.delivery_method(
    ::ActionMailer::Base.delivery_methods[delivery_method[:method]],
    delivery_method[:settings] || {}
  )
  message.deliver!
end