Skip to content

Commit 4757171

Browse files
committed
Add interface for mailer client
1 parent 8827538 commit 4757171

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

clients/mailer.go

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,19 +7,23 @@ import (
77

88
const MailerTopic = "emails"
99

10-
type MailerClient struct {
10+
type MailerClient interface {
11+
SendEmailTemplate(context.Context, events.SendEmailTemplateEvent) error
12+
}
13+
14+
type mailerClient struct {
1115
producer *events.KafkaCloudEventsProducer
1216
}
1317

14-
func NewMailerClient(config *events.CloudEventsConfig) (*MailerClient, error) {
18+
func NewMailerClient(config *events.CloudEventsConfig) (MailerClient, error) {
1519
producer, err := events.NewKafkaCloudEventsProducer(config)
1620
if err != nil {
1721
return nil, err
1822
}
1923

20-
return &MailerClient{producer}, nil
24+
return &mailerClient{producer}, nil
2125
}
2226

23-
func (m *MailerClient) SendEmailTemplate(ctx context.Context, event events.SendEmailTemplateEvent) error {
27+
func (m *mailerClient) SendEmailTemplate(ctx context.Context, event events.SendEmailTemplateEvent) error {
2428
return m.producer.Send(ctx, event)
2529
}

0 commit comments

Comments
 (0)