maptile/config/config.go

31 lines
459 B
Go
Executable File

package config
import "fmt"
type Config struct {
Mode string
Addr string
Port int
DSN string
}
func (c *Config) Validate() error {
if c.Mode != "dev" && c.Mode != "prod" {
return fmt.Errorf("invalid mode: %s", c.Mode)
}
if c.Addr == "" {
return fmt.Errorf("invalid address: %s", c.Addr)
}
if c.Port == 0 {
return fmt.Errorf("invalid port: %d", c.Port)
}
if c.DSN == "" {
return fmt.Errorf("invalid DSN: %s", c.DSN)
}
return nil
}