0
0
Fork 0
mirror of https://github.com/crazy-max/diun.git synced 2025-01-27 01:08:50 +00:00
crazy-max_diun/internal/model/notif_amqp.go
2020-07-16 22:34:44 +02:00

26 lines
1.1 KiB
Go

package model
// NotifAmqp holds amqp notification configuration details
type NotifAmqp struct {
Username string `yaml:"username,omitempty" json:"username,omitempty" validate:"omitempty"`
UsernameFile string `yaml:"usernameFile,omitempty" json:"usernameFile,omitempty" validate:"omitempty,file"`
Password string `yaml:"password,omitempty" json:"password,omitempty" validate:"omitempty"`
PasswordFile string `yaml:"passwordFile,omitempty" json:"passwordFile,omitempty" validate:"omitempty,file"`
Host string `yaml:"host,omitempty" json:"host,omitempty" validate:"required"`
Port int `yaml:"port,omitempty" json:"port,omitempty" validate:"required,min=1"`
Queue string `yaml:"queue,omitempty" json:"queue,omitempty" validate:"required"`
Exchange string `yaml:"exchange,omitempty" json:"exchange,omitempty" validate:"omitempty"`
}
// GetDefaults gets the default values
func (s *NotifAmqp) GetDefaults() *NotifAmqp {
n := &NotifAmqp{}
n.SetDefaults()
return n
}
// SetDefaults sets the default values
func (s *NotifAmqp) SetDefaults() {
s.Host = "localhost"
s.Port = 5672
}