feat: define xorm.FromDialectAndDB (#1812)
refactor: rename the function name feat: define xorm.FromDialectAndDB Co-authored-by: jumpeiMano <jumpeim37@gmail.com> Reviewed-on: https://gitea.com/xorm/xorm/pulls/1812 Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com> Co-Authored-By: jumpeiMano <jumpeimano@noreply.gitea.io> Co-Committed-By: jumpeiMano <jumpeimano@noreply.gitea.io>
This commit is contained in:
parent
0c1b815227
commit
17f28a1314
14
engine.go
14
engine.go
|
@ -61,6 +61,10 @@ func NewEngine(driverName string, dataSourceName string) (*Engine, error) {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return newEngine(driverName, dataSourceName, dialect, db)
|
||||||
|
}
|
||||||
|
|
||||||
|
func newEngine(driverName, dataSourceName string, dialect dialects.Dialect, db *core.DB) (*Engine, error) {
|
||||||
cacherMgr := caches.NewManager()
|
cacherMgr := caches.NewManager()
|
||||||
mapper := names.NewCacheMapper(new(names.SnakeMapper))
|
mapper := names.NewCacheMapper(new(names.SnakeMapper))
|
||||||
tagParser := tags.NewParser("xorm", dialect, mapper, mapper, cacherMgr)
|
tagParser := tags.NewParser("xorm", dialect, mapper, mapper, cacherMgr)
|
||||||
|
@ -88,7 +92,7 @@ func NewEngine(driverName string, dataSourceName string) (*Engine, error) {
|
||||||
engine.SetLogger(log.NewLoggerAdapter(logger))
|
engine.SetLogger(log.NewLoggerAdapter(logger))
|
||||||
|
|
||||||
runtime.SetFinalizer(engine, func(engine *Engine) {
|
runtime.SetFinalizer(engine, func(engine *Engine) {
|
||||||
engine.Close()
|
_ = engine.Close()
|
||||||
})
|
})
|
||||||
|
|
||||||
return engine, nil
|
return engine, nil
|
||||||
|
@ -101,6 +105,14 @@ func NewEngineWithParams(driverName string, dataSourceName string, params map[st
|
||||||
return engine, err
|
return engine, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NewEngineWithDialectAndDB new a db manager according to the parameter.
|
||||||
|
// If you do not want to use your own dialect or db, please use NewEngine.
|
||||||
|
// For creating dialect, you can call dialects.OpenDialect. And, for creating db,
|
||||||
|
// you can call core.Open or core.FromDB.
|
||||||
|
func NewEngineWithDialectAndDB(driverName, dataSourceName string, dialect dialects.Dialect, db *core.DB) (*Engine, error) {
|
||||||
|
return newEngine(driverName, dataSourceName, dialect, db)
|
||||||
|
}
|
||||||
|
|
||||||
// EnableSessionID if enable session id
|
// EnableSessionID if enable session id
|
||||||
func (engine *Engine) EnableSessionID(enable bool) {
|
func (engine *Engine) EnableSessionID(enable bool) {
|
||||||
engine.logSessionID = enable
|
engine.logSessionID = enable
|
||||||
|
|
Loading…
Reference in New Issue