golkeyval

package
v0.0.0-...-1bfd785 Latest Latest
Warning

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

Go to latest
Published: Mar 2, 2023 License: MIT Imports: 12 Imported by: 2

Documentation

Index

Constants

View Source
const (
	DEBUG loggingLevel = iota
	INFO
	WARNING
	ERROR
)

Variables

View Source
var DBEngines = make(map[string]DBEngine)

DBEngines acts as map for all available db-engines.

Functions

func RegisterDBEngine

func RegisterDBEngine(name string, dbEngine DBEngine)

RegisterDBEngine gets used by adapters to register themselves.

Types

type Badger

type Badger struct {
	DBPath          string
	DetectConflicts bool
	NumGoroutines   int
	LogLevel        badger.Logger
	GolDB           *badger.DB
}

Badger struct with required badger details.

func (*Badger) CloseAndDeleteDB

func (b *Badger) CloseAndDeleteDB()

CloseAndDeleteDB closes and deletes a db given handle and DBPath. Useful in use and throw implementations. And also tests.

func (*Badger) CloseDB

func (b *Badger) CloseDB()

CloseDB closes a db given handle.

func (*Badger) Configure

func (b *Badger) Configure(cfg map[string]string)

Configure populates Badger required configs.

func (*Badger) CreateDB

func (b *Badger) CreateDB()

CreateDB creates a Badger db at provided DBPath.

func (*Badger) DelKey

func (b *Badger) DelKey(key string) bool

DelKey deletes key from provided DB handle.

func (*Badger) GetVal

func (b *Badger) GetVal(key string) string

GetVal return string-ified value of key from provided db handle.

func (*Badger) PushKeyVal

func (b *Badger) PushKeyVal(key string, val string) bool

PushKeyVal pushes key-val in provided DB handle.

type Bitcask

type Bitcask struct {
	DBPath string
	GolDB  *bitcask.Bitcask
}

Bitcask struct with required bitcask details.

func (*Bitcask) CloseAndDeleteDB

func (b *Bitcask) CloseAndDeleteDB()

CloseAndDeleteDB closes and deletes a db given handle and DBPath. Useful in use and throw implementations. And also tests.

func (*Bitcask) CloseDB

func (b *Bitcask) CloseDB()

CloseDB syncs and closes a db given handle.

func (*Bitcask) Configure

func (b *Bitcask) Configure(cfg map[string]string)

Configure populates Bitcask required configs.

func (*Bitcask) CreateDB

func (b *Bitcask) CreateDB()

CreateDB creates a bitcask directory at provided DBPath.

func (*Bitcask) DelKey

func (b *Bitcask) DelKey(key string) bool

DelKey deletes key from provided DB handle.

func (*Bitcask) GetVal

func (b *Bitcask) GetVal(key string) string

GetVal return string-ified value of key from provided db handle.

func (*Bitcask) PushKeyVal

func (b *Bitcask) PushKeyVal(key string, val string) bool

PushKeyVal pushes key-val in provided DB handle.

type DBEngine

type DBEngine interface {
	Configure(cfg map[string]string)
	CreateDB()
	CloseDB()
	CloseAndDeleteDB()
	PushKeyVal(key string, val string) bool
	GetVal(key string) string
	DelKey(key string) bool
}

DBEngine interface enables adapter feature for a key-val oriented DB.

func GetDBEngine

func GetDBEngine(name string) DBEngine

GetDBEngine gets used by client to fetch a required db-engine.

type LevelDB

type LevelDB struct {
	DBPath string
	GolDB  *leveldb.DB
}

LevelDB struct with required leveldb details.

func (*LevelDB) CloseAndDeleteDB

func (levelDB *LevelDB) CloseAndDeleteDB()

CloseAndDeleteDB closes and deletes a db given handle and DBPath. Useful in use and throw implementations. And also tests.

func (*LevelDB) CloseDB

func (levelDB *LevelDB) CloseDB()

CloseDB closes a db given handle.

func (*LevelDB) Configure

func (levelDB *LevelDB) Configure(cfg map[string]string)

Configure populates LevelDB required configs.

func (*LevelDB) CreateDB

func (levelDB *LevelDB) CreateDB()

CreateDB creates a leveldb db at provided DBPath.

func (*LevelDB) DelKey

func (levelDB *LevelDB) DelKey(key string) bool

DelKey deletes key from provided DB handle.

func (*LevelDB) GetVal

func (levelDB *LevelDB) GetVal(key string) string

GetVal return string-ified value of key from provided db handle.

func (*LevelDB) PushKeyVal

func (levelDB *LevelDB) PushKeyVal(key string, val string) bool

PushKeyVal pushes key-val in provided DB handle.

type Sqlite3DB

type Sqlite3DB struct {
	DBPath    string
	GolDB     *sql.DB
	TableName string
}

Sqlite3DB struct with sqlite3 required details.

func (*Sqlite3DB) CloseAndDeleteDB

func (sqlite3 *Sqlite3DB) CloseAndDeleteDB()

CloseAndDeleteDB closes and deletes a db given handle and DBPath. Useful in use and throw implementations. And also tests.

func (*Sqlite3DB) CloseDB

func (sqlite3 *Sqlite3DB) CloseDB()

CloseDB closes a db given handle.

func (*Sqlite3DB) Configure

func (sqlite3 *Sqlite3DB) Configure(cfg map[string]string)

Configure populates SQLite required configs.

func (*Sqlite3DB) CreateDB

func (sqlite3 *Sqlite3DB) CreateDB()

CreateDB creates a sqlite3 db at provided DBPath. It will create Table with the name provided during Configure(), so multiple key-val can be kept isolated at same db-path. Create fixed fields FieldKey and FieldValue for key-name and key-value in it.

func (*Sqlite3DB) DelKey

func (sqlite3 *Sqlite3DB) DelKey(key string) bool

DelKey deletes a key from provided DB handle.

func (*Sqlite3DB) GetVal

func (sqlite3 *Sqlite3DB) GetVal(key string) string

GetVal fetches value of key from provided db handle.

func (*Sqlite3DB) PushKeyVal

func (sqlite3 *Sqlite3DB) PushKeyVal(key string, val string) bool

PushKeyVal creates a key-val in provided DB handle.

Jump to

Keyboard shortcuts

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