cdb

package module
v1.1.1 Latest Latest
Warning

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

Go to latest
Published: Apr 28, 2024 License: MIT Imports: 20 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// Chh - хэндлер clickhouse
	Chh *sqlx.DB
)
View Source
var (
	// Dbh - хэндлер базы
	Dbh *sqlx.DB
)

Functions

func CacheConnect

func CacheConnect(o InitCacheConnect) (err error)

CacheConnect - коннект к кэщу

func Connect

func Connect(o InitConnect)

Connect - Подключание к базе

func ConnectClickhouse

func ConnectClickhouse(o InitConnect) (err error)

ConnectClickhouse - Подключание к clickhouse

func Delete

func Delete(i interface{}) (err error)

Delete - удаление записи

func ForeachFunc

func ForeachFunc(i interface{}, o *ParamObj, f func(interface{})) (err error)

ForeachFunc - Получаем список объектов

func ForeachItem

func ForeachItem(i interface{}, o *ParamObj) (err error)

ForeachItem - Получаем список объектов

func Get

func Get(i interface{}, o *ParamObj) (err error)

Get - Получаем одну запись

func GetMultiPlaceholder

func GetMultiPlaceholder(l, c int) string

GetMultiPlaceholder - Формируем нужное кол-во placeholders для множественной вставки. l - кол-во элеменетов, c - кол-во повторов

func GetPlaceholder

func GetPlaceholder(l int) string

GetPlaceholder - Формируем нужное кол-во placeholders

func GetPlaceholderWithDiff

func GetPlaceholderWithDiff(diff, l int) string

GetPlaceholderWithDiff - Формируем нужное кол-во placeholders со смещением

func GetTableName

func GetTableName(i interface{}) string

GetTableName - Получаем название таблицы

func InitObj

func InitObj(i interface{}, o *ParamObj)

InitObj - Инициализация объекта

func QueueInit

func QueueInit(o InitQueueParam) (exitChan chan bool)

QueueInit - Инициализируем очередь

func ReplacePlaceholder

func ReplacePlaceholder(sqlrq string) string

ReplacePlaceholder - Заменяем ? на $...

func Set

func Set(i interface{}) (err error)

Set - Записываем объект в базу

Types

type CacheObj

type CacheObj struct {
	Conn *redis.Client
	// contains filtered or unexported fields
}

CacheObj - Объект коннекта к кэшу

var (
	// Cdb - хэндлер кэша
	Cdb CacheObj
)

func (*CacheObj) CheckReconect

func (c *CacheObj) CheckReconect(err error)

CheckReconect - проверяем нежкен ли реконект

func (*CacheObj) Del

func (c *CacheObj) Del(key string) (err error)

Del - Удаляем объект

func (*CacheObj) Exists

func (c *CacheObj) Exists(key string) (ok bool, err error)

Exists - Проверяем есть ли объект

func (*CacheObj) Expire

func (c *CacheObj) Expire(key string, ex int) (err error)

Expire - Ставим истечение для ключа

func (*CacheObj) Get

func (c *CacheObj) Get(key string) (b []byte, err error)

Get - Получаем объект из кэша

func (*CacheObj) GetObj

func (c *CacheObj) GetObj(key string, i interface{}) (err error)

GetObj - Получаем объект из кэша и сразу его преобразовываем

func (*CacheObj) Incr

func (c *CacheObj) Incr(key string, i int64) (ai int64, err error)

Incr - Увеличиваем значение

func (*CacheObj) Notify

func (c *CacheObj) Notify(key string, data []byte) (err error)

Notify - отправляем уведомление

func (*CacheObj) NotifyMulti

func (c *CacheObj) NotifyMulti(keys []string, data []byte) (err error)

NotifyMulti - отправляем уведомление

func (*CacheObj) NotifyStr

func (c *CacheObj) NotifyStr(key string, data string) (err error)

NotifyStr - отправляем уведомление

func (*CacheObj) Search

func (c *CacheObj) Search(q string, f func(string, []byte)) (err error)

Search - поиск ключей на соответствие

func (*CacheObj) Set

func (c *CacheObj) Set(key string, data interface{}) (err error)

Set - добавляем объект в кэш

func (*CacheObj) SetEx

func (c *CacheObj) SetEx(key string, data interface{}, ex int) (err error)

SetEx - добавление объекта со сроком жизни

func (*CacheObj) SetObj

func (c *CacheObj) SetObj(key string, i interface{}) (err error)

SetObj - добавляем объект в кэш

func (*CacheObj) SetObjEx

func (c *CacheObj) SetObjEx(key string, i interface{}, ex int) (err error)

SetObjEx - добавляем объект в кэш с указанием времени истечения

func (*CacheObj) SetStr

func (c *CacheObj) SetStr(key string, data string) (err error)

SetStr - добавляем объект в кэш

func (*CacheObj) SetStrEx

func (c *CacheObj) SetStrEx(key string, data string, ex int) (err error)

SetStrEx - добавляем объект в кэш

func (*CacheObj) Subscribe

func (c *CacheObj) Subscribe(keys []string, f func(string, string) bool) (err error)

Subscribe - подписываемся на уведомления

type InitCacheConnect

type InitCacheConnect struct {
	Host   string
	Prefix string
}

InitCacheConnect - объект инициализации коннекта к кэшу

type InitConnect

type InitConnect struct {
	Login    string
	Password string
	Socket   string
	DBName   string
	Charset  string
	SSL      SSLConf
	Silent   bool
	AppName  string
}

InitConnect - Объект конекта к базе

type InitQueueParam

type InitQueueParam struct {
	Path      string
	QueueSize int
}

InitQueueParam - объект инициализации очереди

type ParamObj

type ParamObj struct {
	PK          interface{}
	Tx          *sqlx.Tx
	Table       string
	OrderBy     string
	Limit       string
	Offset      string
	GroupBy     string
	Where       string
	Fields      string
	CondEntries []string
	Values      []interface{}
}

ParamObj - Объект инициализации структуры

type Parent

type Parent struct {
	DBParentObjInited bool                   `json:"-"`
	DBParentObjTx     unsafe.Pointer         `json:"-"`
	DBParentInitValue map[string]interface{} `json:"-"`
}

Parent - Объект структуры для объектов

func (*Parent) GetTx

func (p *Parent) GetTx() (tx *sqlx.Tx)

GetTx - Получаем хэндлер транзакции

type QueueObj

type QueueObj struct {
	Chan         chan queueData
	Path         string
	Fh           *os.File
	Gw           *gob.Encoder
	FileOpenTime time.Time
	Exited       bool
	sync.WaitGroup
}

QueueObj - Объект очереди

var (
	// Qdh - хэгдлер очереди
	Qdh QueueObj
)

func (*QueueObj) Complete

func (q *QueueObj) Complete(id string) (err error)

Complete - отмечаем что событие было выполнено

func (*QueueObj) Send

func (q *QueueObj) Send(data []byte) (err error)

Send - отправка сообщения в очередь

type SSLConf

type SSLConf struct {
	SSLMode     string
	SSLCert     string
	SSLKey      string
	SSLRootCert string
}

SSLConf - Объект конфига SSL

Jump to

Keyboard shortcuts

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