forked from mirrors/homebox
Initial commit
This commit is contained in:
commit
29f583e936
135 changed files with 18463 additions and 0 deletions
56
backend/pkgs/mailer/message.go
Normal file
56
backend/pkgs/mailer/message.go
Normal file
|
@ -0,0 +1,56 @@
|
|||
package mailer
|
||||
|
||||
import "net/mail"
|
||||
|
||||
type Message struct {
|
||||
Subject string
|
||||
To mail.Address
|
||||
From mail.Address
|
||||
Body string
|
||||
}
|
||||
|
||||
type MessageBuilder struct {
|
||||
subject string
|
||||
to mail.Address
|
||||
from mail.Address
|
||||
body string
|
||||
}
|
||||
|
||||
func NewMessageBuilder() *MessageBuilder {
|
||||
return &MessageBuilder{}
|
||||
}
|
||||
|
||||
func (mb *MessageBuilder) Build() *Message {
|
||||
return &Message{
|
||||
Subject: mb.subject,
|
||||
To: mb.to,
|
||||
From: mb.from,
|
||||
Body: mb.body,
|
||||
}
|
||||
}
|
||||
|
||||
func (mb *MessageBuilder) SetSubject(subject string) *MessageBuilder {
|
||||
mb.subject = subject
|
||||
return mb
|
||||
}
|
||||
|
||||
func (mb *MessageBuilder) SetTo(name, to string) *MessageBuilder {
|
||||
mb.to = mail.Address{
|
||||
Name: name,
|
||||
Address: to,
|
||||
}
|
||||
return mb
|
||||
}
|
||||
|
||||
func (mb *MessageBuilder) SetFrom(name, from string) *MessageBuilder {
|
||||
mb.from = mail.Address{
|
||||
Name: name,
|
||||
Address: from,
|
||||
}
|
||||
return mb
|
||||
}
|
||||
|
||||
func (mb *MessageBuilder) SetBody(body string) *MessageBuilder {
|
||||
mb.body = body
|
||||
return mb
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue