暫無描述
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

register_config.go 574B

1234567891011121314151617181920212223242526
  1. package subconfigs
  2. // ConfigLoader 配置加载接口
  3. type ConfigLoader interface {
  4. SetDefaults()
  5. Load(data map[string]interface{}) error
  6. //Validate() error
  7. }
  8. // 全局注册表 - 存储配置实例(单例)
  9. var registry = make(map[string]ConfigLoader)
  10. // Register 注册配置实例
  11. func Register(name string, config ConfigLoader) {
  12. registry[name] = config
  13. }
  14. // GetConfig 获取配置实例
  15. func GetConfig(name string) ConfigLoader {
  16. return registry[name]
  17. }
  18. // GetAllConfigs 获取所有配置
  19. func GetAllConfigs() map[string]ConfigLoader {
  20. return registry
  21. }