fix: fixes issue with SMTP sender with address endpoints

This commit is contained in:
Adam Cooke
2024-03-01 18:27:53 +00:00
parent 0140dc4483
commit 2621a190b1
3 changed files with 5 additions and 5 deletions
@@ -167,7 +167,7 @@ module MessageDequeuer
when HTTPEndpoint
sender = @state.sender_for(HTTPSender, queued_message.message.endpoint)
when AddressEndpoint
sender = @state.sender_for(SMTPSender, queued_message.message.endpoint.domain, nil, force_rcpt_to: queued_message.message.endpoint.address)
sender = @state.sender_for(SMTPSender, queued_message.message.endpoint.domain, nil, rcpt_to: queued_message.message.endpoint.address)
else
log "invalid endpoint for route (#{queued_message.message.endpoint_type})"
create_delivery "HardFail", details: "Invalid endpoint for route."
+3 -3
View File
@@ -5,10 +5,10 @@ module MessageDequeuer
attr_accessor :send_result
def sender_for(klass, *args)
def sender_for(klass, *args, **kwargs)
@cached_senders ||= {}
@cached_senders[[klass, args]] ||= begin
klass_instance = klass.new(*args)
@cached_senders[[klass, args, kwargs]] ||= begin
klass_instance = klass.new(*args, **kwargs)
klass_instance.start
klass_instance
end