1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/aurora-engine-aurora

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
configuration.go 1.7 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
awen Отправлено 27.02.2023 18:49 9393a4f
package aurora
import (
"embed"
"gitee.com/aurora-engine/web"
"github.com/sirupsen/logrus"
"reflect"
)
/*
Aurora 配置项大全,New 启动阶段加载
Use 阶段加载的配置会覆盖
*/
type Option func(*Engine)
// Logs 配置日志实例
func Logs(log web.Log) Option {
return func(engine *Engine) {
engine.Log = log
engine.Route.Log = log
}
}
// ConfigFilePath 指定 Aurora 加载配置文件位置
func ConfigFilePath(configPath string) Option {
return func(engine *Engine) {
// 重置配置
engine.config = nil
engine.configpath = configPath
engine.viperConfig()
}
}
// Config 指定 Aurora 的配置实例
func Config(config web.Config) Option {
return func(engine *Engine) {
engine.config = config
engine.viperConfig()
}
}
// LoadConfig 加载配置文件数据
// 该方法只适用于 本地配置文件 embed 方式加载配置文件数据,初始化配置实例还是默认的
// 如果想要 第三方数据源 请使用 Config 方法替换掉 默认的配置实例
func LoadConfig(cnf []byte) Option {
return func(engine *Engine) {
engine.config = nil
engine.configFile = cnf
engine.viperConfig()
}
}
// Debug 开启debug日志
func Debug() Option {
return func(a *Engine) {
of := reflect.ValueOf(a.Log)
if of.Type().String() == reflect.ValueOf(&logrus.Logger{}).Type().String() {
l := of.Interface()
l.(*logrus.Logger).SetLevel(logrus.DebugLevel)
}
}
}
// MaxMultipartMemory 添加全局设置文件上传大小
func MaxMultipartMemory(size int64) Option {
return func(engine *Engine) {
engine.MaxMultipartMemory = size
}
}
// Static web 静态资源配置
func Static(fs embed.FS) Option {
return func(engine *Engine) {
engine.Route.Static(fs)
}
}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/aurora-engine-aurora.git
git@api.gitlife.ru:oschina-mirror/aurora-engine-aurora.git
oschina-mirror
aurora-engine-aurora
aurora-engine-aurora
master