优化smtp的代码
This commit is contained in:
@@ -22,7 +22,7 @@ type EmailFactoryInterface interface {
|
||||
}
|
||||
|
||||
type DefaultEmail struct {
|
||||
Options emailOption
|
||||
Options EmailOption
|
||||
EmailType EmailType
|
||||
}
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ import (
|
||||
"github.com/yuninks/loggerx"
|
||||
)
|
||||
|
||||
type emailOption struct {
|
||||
type EmailOption struct {
|
||||
Logger loggerx.LoggerInterface
|
||||
|
||||
Smtp *EmailConfigDataSmtp `json:"smtp,omitempty"` // smtp
|
||||
@@ -15,42 +15,42 @@ type emailOption struct {
|
||||
Mailgun *EmialConfigDataMailgun `json:"mailgun,omitempty"` // mailgun
|
||||
}
|
||||
|
||||
func DefaultOptions() emailOption {
|
||||
func DefaultOptions() EmailOption {
|
||||
ctx := context.Background()
|
||||
return emailOption{
|
||||
return EmailOption{
|
||||
Logger: loggerx.NewLogger(ctx),
|
||||
}
|
||||
}
|
||||
|
||||
type Option func(*emailOption)
|
||||
type Option func(*EmailOption)
|
||||
|
||||
// 设置日志
|
||||
func SetLogger(logger loggerx.LoggerInterface) Option {
|
||||
return func(o *emailOption) {
|
||||
return func(o *EmailOption) {
|
||||
o.Logger = logger
|
||||
}
|
||||
}
|
||||
|
||||
func SetSmtp(smtp *EmailConfigDataSmtp) Option {
|
||||
return func(o *emailOption) {
|
||||
return func(o *EmailOption) {
|
||||
o.Smtp = smtp
|
||||
}
|
||||
}
|
||||
|
||||
func SetAws(aws *EmailConfigDataAws) Option {
|
||||
return func(o *emailOption) {
|
||||
return func(o *EmailOption) {
|
||||
o.Aws = aws
|
||||
}
|
||||
}
|
||||
|
||||
func SetAliyun(aliyun *EmialConfigDataAliyun) Option {
|
||||
return func(o *emailOption) {
|
||||
return func(o *EmailOption) {
|
||||
o.Aliyun = aliyun
|
||||
}
|
||||
}
|
||||
|
||||
func SetMailgun(mailgun *EmialConfigDataMailgun) Option {
|
||||
return func(o *emailOption) {
|
||||
return func(o *EmailOption) {
|
||||
o.Mailgun = mailgun
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user