mirror of
https://github.com/sigcn/pg.git
synced 2025-09-29 19:52:08 +08:00
33 lines
538 B
Go
33 lines
538 B
Go
package rdt
|
|
|
|
import "time"
|
|
|
|
type Config struct {
|
|
MTU int
|
|
Interval time.Duration
|
|
StatsServerListen string
|
|
}
|
|
|
|
type Option func(cfg *Config) error
|
|
|
|
func MTU(mtu int) Option {
|
|
return func(cfg *Config) error {
|
|
cfg.MTU = mtu
|
|
return nil
|
|
}
|
|
}
|
|
|
|
func StateInterval(interval time.Duration) Option {
|
|
return func(cfg *Config) error {
|
|
cfg.Interval = interval
|
|
return nil
|
|
}
|
|
}
|
|
|
|
func EnableStatsServer(listenAddr string) Option {
|
|
return func(cfg *Config) error {
|
|
cfg.StatsServerListen = listenAddr
|
|
return nil
|
|
}
|
|
}
|