summaryrefslogtreecommitdiffstats
path: root/services/mailer/mailer.go
diff options
context:
space:
mode:
Diffstat (limited to 'services/mailer/mailer.go')
-rw-r--r--services/mailer/mailer.go9
1 files changed, 4 insertions, 5 deletions
diff --git a/services/mailer/mailer.go b/services/mailer/mailer.go
index 3d878b7c8c..5aeda9ed79 100644
--- a/services/mailer/mailer.go
+++ b/services/mailer/mailer.go
@@ -378,7 +378,7 @@ func (s *dummySender) Send(from string, to []string, msg io.WriterTo) error {
return nil
}
-var mailQueue queue.Queue
+var mailQueue *queue.WorkerPoolQueue[*Message]
// Sender sender for sending mail synchronously
var Sender gomail.Sender
@@ -401,9 +401,8 @@ func NewContext(ctx context.Context) {
Sender = &smtpSender{}
}
- mailQueue = queue.CreateQueue("mail", func(data ...queue.Data) []queue.Data {
- for _, datum := range data {
- msg := datum.(*Message)
+ mailQueue = queue.CreateSimpleQueue("mail", func(items ...*Message) []*Message {
+ for _, msg := range items {
gomailMsg := msg.ToMessage()
log.Trace("New e-mail sending request %s: %s", gomailMsg.GetHeader("To"), msg.Info)
if err := gomail.Send(Sender, gomailMsg); err != nil {
@@ -413,7 +412,7 @@ func NewContext(ctx context.Context) {
}
}
return nil
- }, &Message{})
+ })
go graceful.GetManager().RunWithShutdownFns(mailQueue.Run)