aeus-admin/pkg/dbdialer/types.go

39 lines
524 B
Go

package dbdialer
import (
"git.nobla.cn/golang/aeus/pkg/logger"
"gorm.io/gorm"
)
type (
options struct {
log logger.Logger
cfg *gorm.Config
}
Option func(o *options)
)
func WithConfig(cfg *gorm.Config) Option {
return func(o *options) {
o.cfg = cfg
}
}
func WithLogger(log logger.Logger) Option {
return func(o *options) {
o.log = log
}
}
func newOptions(opts ...Option) *options {
o := &options{
cfg: &gorm.Config{},
log: logger.Default(),
}
for _, opt := range opts {
opt(o)
}
return o
}