datastore

package
v0.0.0-...-d30cded Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 28, 2023 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	Container = &DataStoreContainer{}
)

Initialize a data storage container singleton instance

Functions

func InitializeDataStore

func InitializeDataStore(config *settings.Config) error

InitializeDataStore initializes data storage according to the config

func NewXOrmLoggerAdapter

func NewXOrmLoggerAdapter(showSql bool, logLevel settings.Level) xorm.Logger

NewXOrmLoggerAdapter returns a new XOrmLoggerAdapter instance

Types

type DataStore

type DataStore struct {
	// contains filtered or unexported fields
}

DataStore represents a data storage containing a series of database shards

func NewDataStore

func NewDataStore(databases ...*Database) (*DataStore, error)

NewDataStore returns a new data storage by a series of database

func (*DataStore) Choose

func (s *DataStore) Choose(key int64) *Database

Choose returns a database instance by sharding key

func (*DataStore) DoTransaction

func (s *DataStore) DoTransaction(key int64, fn func(sess *xorm.Session) error) (err error)

DoTransaction runs a new database transaction in a specific database by sharding key

func (*DataStore) Query

func (s *DataStore) Query(key int64) *xorm.Session

Query returns a new database session in a specific database by sharding key

func (*DataStore) SyncStructs

func (s *DataStore) SyncStructs(beans ...interface{}) error

SyncStructs updates database structs by database models

type DataStoreContainer

type DataStoreContainer struct {
	UserStore     *DataStore
	TokenStore    *DataStore
	UserDataStore *DataStore
}

DataStoreContainer contains all data storages

type Database

type Database struct {
	*xorm.EngineGroup
}

Database represents a database instance

func (*Database) DoTransaction

func (db *Database) DoTransaction(fn func(sess *xorm.Session) error) (err error)

DoTransaction runs a new database transaction

type XOrmLoggerAdapter

type XOrmLoggerAdapter struct {
	// contains filtered or unexported fields
}

XOrmLoggerAdapter represents the logger adapter for xorm

func (XOrmLoggerAdapter) Debug

func (logger XOrmLoggerAdapter) Debug(v ...interface{})

Debug logs debug log

func (XOrmLoggerAdapter) Debugf

func (logger XOrmLoggerAdapter) Debugf(format string, v ...interface{})

Debugf logs debug log with custom format

func (XOrmLoggerAdapter) Error

func (logger XOrmLoggerAdapter) Error(v ...interface{})

Error logs error log

func (XOrmLoggerAdapter) Errorf

func (logger XOrmLoggerAdapter) Errorf(format string, v ...interface{})

Errorf logs error log with custom format

func (XOrmLoggerAdapter) Info

func (logger XOrmLoggerAdapter) Info(v ...interface{})

Info logs info log

func (XOrmLoggerAdapter) Infof

func (logger XOrmLoggerAdapter) Infof(format string, v ...interface{})

Infof logs info log with custom format

func (XOrmLoggerAdapter) IsShowSQL

func (logger XOrmLoggerAdapter) IsShowSQL() bool

IsShowSQL returns whether write sql to log

func (XOrmLoggerAdapter) Level

func (logger XOrmLoggerAdapter) Level() xorm.LogLevel

Level returns the logger level

func (XOrmLoggerAdapter) SetLevel

func (logger XOrmLoggerAdapter) SetLevel(l xorm.LogLevel)

SetLevel sets the logger level

func (XOrmLoggerAdapter) ShowSQL

func (logger XOrmLoggerAdapter) ShowSQL(show ...bool)

ShowSQL sets whether write sql to log

func (XOrmLoggerAdapter) Warn

func (logger XOrmLoggerAdapter) Warn(v ...interface{})

Warn logs warn log

func (XOrmLoggerAdapter) Warnf

func (logger XOrmLoggerAdapter) Warnf(format string, v ...interface{})

Warnf logs warn log with custom format

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL