Exception: StandardCircuit::Mailer::CircuitOpenError

Inherits:
StandardError
  • Object
show all
Defined in:
lib/standard_circuit/mailer/circuit_open_error.rb

Overview

Default error class raised by StandardCircuit::Mailer::DeliveryMethod when the wrapped mailer circuit is open. Mailer jobs can rescue/retry on this class to defer delivery until the upstream recovers.

Constructor contract (matches DeliveryMethod#deliver!):

new(recipients:, subject:)

Consumers that want their own error class can still pass retry_error_class: to the delivery method settings; this class is the default when none is provided.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(recipients:, subject:) ⇒ CircuitOpenError

Returns a new instance of CircuitOpenError.



16
17
18
19
20
# File 'lib/standard_circuit/mailer/circuit_open_error.rb', line 16

def initialize(recipients:, subject:)
  @recipients = recipients
  @subject = subject
  super("Circuit breaker is open: to=#{recipients.inspect} subject=#{subject.inspect}")
end

Instance Attribute Details

#recipientsObject (readonly)

Returns the value of attribute recipients.



14
15
16
# File 'lib/standard_circuit/mailer/circuit_open_error.rb', line 14

def recipients
  @recipients
end

#subjectObject (readonly)

Returns the value of attribute subject.



14
15
16
# File 'lib/standard_circuit/mailer/circuit_open_error.rb', line 14

def subject
  @subject
end