goProject/trunk/game/common/config/config.go
2025-01-15 17:36:12 +08:00

57 lines
1.0 KiB
Go

package config
import (
"fmt"
"goutil/configUtil"
"goutil/debugUtil"
"goutil/logUtil"
)
var (
configManager = configMgr.NewConfigManager()
)
func init() {
// 优先加基础配置
configManager.RegisterInitFunc(initBaseConfig)
configManager.RegisterInitFunc(initDBConfig)
configManager.RegisterInitFunc(initMonitorConfig)
}
func init() {
// 设置日志文件的存储目录
logUtil.SetLogPath("LOG")
if err := reload(); err != nil {
panic(fmt.Errorf("初始化配置文件失败,错误信息为:%s", err))
}
// 注册重新加载的方法
reloadMgr.RegisterReloadFunc("config.reload", reload)
}
func reload() error {
// 读取配置文件内容
configObj := configUtil.NewXmlConfig()
err := configObj.LoadFromFile("config.xml")
if err != nil {
return err
}
debug, err := configObj.Bool("root/DEBUG", "")
if err != nil {
return err
}
// 设置debugUtil的状态
debugUtil.SetDebug(debug)
// 调用所有已经注册的配置初始化方法
if err := configManager.Init(configObj); err != nil {
return err
}
return nil
}