config

package
v0.0.0-...-98cd694 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 29, 2024 License: Unlicense Imports: 11 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ProviderSendgrid represents SendGrid.
	ProviderSendgrid = "sendgrid"
	// ProviderMailgun represents Mailgun.
	ProviderMailgun = "mailgun"
	// ProviderMailjet represents Mailjet.
	ProviderMailjet = "mailjet"
)

Variables

View Source
var (
	// ProvidersEmail are what we provide to dependency injection.
	ProvidersEmail = wire.NewSet(
		ProvideEmailer,
	)
)

Functions

func ProvideEmailer

func ProvideEmailer(cfg *Config, logger logging.Logger, tracerProvider tracing.TracerProvider, client *http.Client) (email.Emailer, error)

ProvideEmailer provides an email.Emailer from a config.

Types

type Config

type Config struct {
	Sendgrid *sendgrid.Config `json:"sendgrid" toml:"sendgrid,omitempty"`
	Mailgun  *mailgun.Config  `json:"mailgun"  toml:"mailgun,omitempty"`
	Mailjet  *mailjet.Config  `json:"mailjet"  toml:"mailjet,omitempty"`
	Provider string           `json:"provider" toml:"provider,omitempty"`
}

Config is the configuration structure.

func (*Config) ProvideEmailer

func (cfg *Config) ProvideEmailer(logger logging.Logger, tracerProvider tracing.TracerProvider, client *http.Client) (email.Emailer, error)

ProvideEmailer provides an outbound_emailer.

func (*Config) ValidateWithContext

func (cfg *Config) ValidateWithContext(ctx context.Context) error

ValidateWithContext validates a Config struct.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL