package server import "time" // Config holds HTTP server configuration. // All fields carry caarlos0/env struct tags — applications supply the loader. type Config struct { Host string `env:"EINHERJAR_SERVER_HOST" envDefault:"0.0.0.0"` Port int `env:"EINHERJAR_SERVER_PORT" envDefault:"8080"` ReadTimeout time.Duration `env:"EINHERJAR_SERVER_READ_TIMEOUT" envDefault:"5s"` WriteTimeout time.Duration `env:"EINHERJAR_SERVER_WRITE_TIMEOUT" envDefault:"10s"` IdleTimeout time.Duration `env:"EINHERJAR_SERVER_IDLE_TIMEOUT" envDefault:"120s"` ShutdownTimeout time.Duration `env:"EINHERJAR_SERVER_SHUTDOWN_TIMEOUT" envDefault:"10s"` } const defaultShutdownTimeout = 10 * time.Second