From 439784b33b61f80ff6d34511793d7f544c0dd35b Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Sat, 29 Feb 2020 13:17:34 +0800 Subject: [PATCH] remove unused codes --- core/db.go | 2 +- dialects/dialect.go | 7 ------- engine.go | 40 ++++++++++++++++------------------------ log/logger_context.go | 16 ++++++++++++++-- 4 files changed, 31 insertions(+), 34 deletions(-) diff --git a/core/db.go b/core/db.go index ebd3f689..592ccf18 100644 --- a/core/db.go +++ b/core/db.go @@ -83,7 +83,7 @@ type DB struct { Mapper names.Mapper reflectCache map[reflect.Type]*cacheStruct reflectCacheMutex sync.RWMutex - Logger log.ContextLogger + Logger log.SQLLogger } // Open opens a database diff --git a/dialects/dialect.go b/dialects/dialect.go index 4fbc4754..186f94be 100644 --- a/dialects/dialect.go +++ b/dialects/dialect.go @@ -11,7 +11,6 @@ import ( "time" "xorm.io/xorm/core" - "xorm.io/xorm/log" "xorm.io/xorm/schemas" ) @@ -34,7 +33,6 @@ type URI struct { // a dialect is a driver's wrapper type Dialect interface { - SetLogger(logger log.ContextLogger) Init(*core.DB, *URI, string, string) error URI() *URI DB() *core.DB @@ -92,7 +90,6 @@ type Base struct { dialect Dialect driverName string dataSourceName string - logger log.ContextLogger uri *URI } @@ -100,10 +97,6 @@ func (b *Base) DB() *core.DB { return b.db } -func (b *Base) SetLogger(logger log.ContextLogger) { - b.logger = logger -} - func (b *Base) DefaultSchema() string { return "" } diff --git a/engine.go b/engine.go index 89ae89cf..f40ce2e4 100644 --- a/engine.go +++ b/engine.go @@ -31,22 +31,16 @@ import ( // Engine is the major struct of xorm, it means a database manager. // Commonly, an application only need one engine type Engine struct { - db *core.DB - dialect dialects.Dialect + cacherMgr *caches.Manager + db *core.DB + defaultContext context.Context + dialect dialects.Dialect + engineGroup *EngineGroup + logger log.ContextLogger + tagParser *tags.Parser - //showSQL bool - //showExecTime bool - - logger log.ContextLogger TZLocation *time.Location // The timezone of the application DatabaseTZ *time.Location // The timezone of the database - - engineGroup *EngineGroup - - defaultContext context.Context - - tagParser *tags.Parser - cacherMgr *caches.Manager } func (engine *Engine) SetCacher(tableName string, cacher caches.Cacher) { @@ -67,16 +61,12 @@ func (engine *Engine) BufferSize(size int) *Session { // ShowSQL show SQL statement or not on logger if log level is great than INFO func (engine *Engine) ShowSQL(show ...bool) { engine.logger.ShowSQL(show...) -} - -// ShowExecTime show SQL statement and execute time or not on logger if log level is great than INFO -/*func (engine *Engine) ShowExecTime(show ...bool) { - if len(show) == 0 { - engine.showExecTime = true + if engine.logger.IsShowSQL() { + engine.db.Logger = engine.logger } else { - engine.showExecTime = show[0] + engine.db.Logger = &log.DiscardSQLLogger{} } -}*/ +} // Logger return the logger interface func (engine *Engine) Logger() log.ContextLogger { @@ -93,9 +83,11 @@ func (engine *Engine) SetLogger(logger interface{}) { realLogger = t } engine.logger = realLogger - //engine.showSQL = realLogger.IsShowSQL() - engine.dialect.SetLogger(realLogger) - engine.db.Logger = realLogger + if realLogger.IsShowSQL() { + engine.db.Logger = realLogger + } else { + engine.db.Logger = &log.DiscardSQLLogger{} + } } // SetLogLevel sets the logger level diff --git a/log/logger_context.go b/log/logger_context.go index d9f18682..b05f1c52 100644 --- a/log/logger_context.go +++ b/log/logger_context.go @@ -18,14 +18,26 @@ type LogContext struct { Err error // SQL executed error } +type SQLLogger interface { + BeforeSQL(context LogContext) + AfterSQL(context LogContext) +} + +type DiscardSQLLogger struct{} + +var _ SQLLogger = &DiscardSQLLogger{} + +func (DiscardSQLLogger) BeforeSQL(LogContext) {} +func (DiscardSQLLogger) AfterSQL(LogContext) {} + // ContextLogger represents a logger interface with context type ContextLogger interface { + SQLLogger + Debugf(format string, v ...interface{}) Errorf(format string, v ...interface{}) Infof(format string, v ...interface{}) Warnf(format string, v ...interface{}) - BeforeSQL(context LogContext) - AfterSQL(context LogContext) Level() LogLevel SetLevel(l LogLevel)