Documentation
¶
Index ¶
Constants ¶
View Source
const ( // Config constants. Default = "default" // Logger constants. DefaultLogFileName = "gatewayd.log" DefaultLogFilePermission = 0o660 DefaultLogOutput = "console" DefaultLogLevel = "info" // Plugin constants. DefaultMinPort = 50000 DefaultMaxPort = 60000 PluginPriorityStart = 1000 LoggerName = "plugin" // Client constants. DefaultChunkSize = 4096 DefaultReceiveDeadline = 0 // 0 means no deadline (timeout) DefaultSendDeadline = 0 DefaultTCPKeepAlivePeriod = 30 * time.Second // Pool constants. EmptyPoolCapacity = 0 DefaultPoolSize = 10 MinimumPoolSize = 2 // Server constants. DefaultListenNetwork = "tcp" DefaultListenAddress = "0.0.0.0:15432" DefaultTickInterval = 5 * time.Second DefaultBufferSize = 1 << 24 // 16777216 bytes DefaultTCPKeepAlive = 3 * time.Second DefaultLoadBalancer = "roundrobin" // Utility constants. DefaultSeed = 1000 ChecksumBufferSize = 65536 )
Variables ¶
This section is empty.
Functions ¶
func LoadGlobalConfigDefaults ¶
LoadDefaultConfig loads the default configuration before loading the config file.
Types ¶
type Client ¶
type Client struct { Network string `koanf:"network"` Address string `koanf:"address"` TCPKeepAlive bool `koanf:"tcpKeepAlive"` TCPKeepAlivePeriod time.Duration `koanf:"tcpKeepAlivePeriod"` ReceiveBufferSize int `koanf:"receiveBufferSize"` ReceiveChunkSize int `koanf:"receiveChunkSize"` ReceiveDeadline time.Duration `koanf:"receiveDeadline"` SendDeadline time.Duration `koanf:"sendDeadline"` }
type GlobalConfig ¶
type Logger ¶
type Logger struct { Output string `koanf:"output"` FileName string `koanf:"fileName"` TimeFormat string `koanf:"timeFormat"` Level string `koanf:"level"` Permission uint32 `koanf:"permission"` NoColor bool `koanf:"noColor"` StartupMsg bool `koanf:"startupMsg"` }
func (Logger) GetTimeFormat ¶
timeFormat returns the logger time format from config file.
type PluginConfig ¶
type PluginConfig struct { VerificationPolicy string `koanf:"verificationPolicy"` CompatibilityPolicy string `koanf:"compatibilityPolicy"` Plugins []Plugin `koanf:"plugins"` }
func (PluginConfig) GetPluginCompatPolicy ¶
func (p PluginConfig) GetPluginCompatPolicy() CompatPolicy
pluginCompatPolicy returns the plugin compatibility policy from plugin config file.
func (PluginConfig) GetVerificationPolicy ¶
func (p PluginConfig) GetVerificationPolicy() Policy
verificationPolicy returns the hook verification policy from plugin config file.
type Server ¶
type Server struct { EnableTicker bool `koanf:"enableTicker"` MultiCore bool `koanf:"multiCore"` LockOSThread bool `koanf:"lockOSThread"` ReuseAddress bool `koanf:"reuseAddress"` ReusePort bool `koanf:"reusePort"` TCPNoDelay bool `koanf:"tcpNoDelay"` ReadBufferCap int `koanf:"readBufferCap"` WriteBufferCap int `koanf:"writeBufferCap"` SocketRecvBuffer int `koanf:"socketRecvBuffer"` SocketSendBuffer int `koanf:"socketSendBuffer"` SoftLimit uint64 `koanf:"softLimit"` HardLimit uint64 `koanf:"hardLimit"` TCPKeepAlive time.Duration `koanf:"tcpKeepAlive"` TickInterval time.Duration `koanf:"tickInterval"` Network string `koanf:"network"` Address string `koanf:"address"` LoadBalancer string `koanf:"loadBalancer"` }
func (Server) GetLoadBalancer ¶
func (s Server) GetLoadBalancer() gnet.LoadBalancing
loadBalancer returns the load balancing algorithm to use.
func (Server) GetTCPNoDelay ¶
func (s Server) GetTCPNoDelay() gnet.TCPSocketOpt
tcpNoDelay returns the TCP no delay option from config file.
Click to show internal directories.
Click to hide internal directories.