db

package
v3.8.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Feb 14, 2020 License: GPL-3.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DBApi

type DBApi interface {
	Lock()
	UnLock()
	Close()
	//kv database interface
	Put(key []byte, value []byte) error
	Get(key []byte) ([]byte, error)
	Delete(key []byte) error
	Flush() error
	Seek(prefixKey []byte) ([]string, error)
	NewBatch()
	BatchPut(key []byte, value []byte)
	BatchDelete(key []byte)
	BatchCommit() error

	CreatObjectIndex(objectName string, indexName string) error
	CreatObjectMultiIndex(objectName string, indexName string, indexJson string, secKey string) error
	SetObject(objectName string, objectValue interface{}) error
	SetObjectByIndex(objectName string, indexName string, indexValue interface{}, objectValue interface{}) error
	SetObjectByMultiIndexs(objectName string, indexName []string, indexValue []interface{}, objectValue interface{}) error
	GetObject(objectName string, key string) (interface{}, error)
	GetObjectByIndex(objectName string, indexName string, indexValue string) (interface{}, error)
	GetObjectByMultiIndexs(objectName string, indexName []string, indexValue []interface{}) (interface{}, error)
	GetAllObjectKeys(objectName string) ([]string, error)
	GetAllObjects(keyName string) ([]string, error)
	GetAllObjectsSortByIndex(indexName string) ([]string, error)
	GetObjectsWithinRangeByIndex(indexName string, lessOrEqual string, greater string) ([]string, error)
	DeleteObject(objectName string, key string) (string, error)
	//db undo interface
	LoadStateDB()
	AddObject(string)
	Commit(uint64) error
	Rollback() error
	RollbackAll() error
	UndoFlush()
	ReleaseUndoInfo()
	Reset() //TODO
}

DBApi is listing all the interface that DBService provides.

type DBService

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

DBService is db service struct for other package

func NewDbService

func NewDbService(path string, codedbPath string) *DBService

NewDbService is to create a new db service with kv databse, codedb, and option db for optionally

func (*DBService) AddObject

func (d *DBService) AddObject(object string)

func (*DBService) BatchCommit

func (d *DBService) BatchCommit() error

func (*DBService) BatchDelete

func (d *DBService) BatchDelete(key []byte)

func (*DBService) BatchPut

func (d *DBService) BatchPut(key []byte, value []byte)

func (*DBService) BeginUndo

func (d *DBService) BeginUndo(name string) *codedb.UndoSession

BeginUndo is to start undo session

func (*DBService) Close

func (d *DBService) Close()

Close is to close db.

func (*DBService) Commit

func (d *DBService) Commit(revision uint64) error

Commit is to commit object

func (*DBService) CreatObjectIndex

func (d *DBService) CreatObjectIndex(objectName string, indexName string, indexJson string) error

CreatObjectIndex is to create object index when one object's attributed is going to search or sort.

func (*DBService) CreatObjectMultiIndex

func (d *DBService) CreatObjectMultiIndex(objectName string, indexName string, indexJson string, secKey string) error

CreatObjectUintIndex is to create object index when one object's attributed is going to search or sort.

func (*DBService) Delete

func (d *DBService) Delete(key []byte) error

Delete is to delete record by key.

func (*DBService) DeleteObject

func (d *DBService) DeleteObject(objectName string, key string) (string, error)

DeleteObject is to delete object by object and key

func (*DBService) Flush

func (d *DBService) Flush() error

Flush is to flush record to db.

func (*DBService) FreeSessionEx

func (d *DBService) FreeSessionEx() error

func (*DBService) Get

func (d *DBService) Get(key []byte) ([]byte, error)

Get is to get record by key and return value.

func (*DBService) GetAllObjectKeys

func (d *DBService) GetAllObjectKeys(objectName string) ([]string, error)

GetAllObjectKeys is to get all objects by object name

func (*DBService) GetAllObjects

func (d *DBService) GetAllObjects(keyName string) ([]string, error)

GetAllObjects is to get all objects by keyName

func (*DBService) GetAllObjectsFilter

func (d *DBService) GetAllObjectsFilter(keyName string) ([]string, error)

GetAllObjectsFilter is to get all objects by keyName

func (*DBService) GetAllObjectsSortByIndex

func (d *DBService) GetAllObjectsSortByIndex(indexName string) ([]string, error)

GetAllObjectsSortByIndex is to get all objects by sorted index

func (*DBService) GetObject

func (d *DBService) GetObject(objectName string, key string) (string, error)

GetObject is to get object by key and return value. which should have key has create index.

func (*DBService) GetObjectByIndex

func (d *DBService) GetObjectByIndex(objectName string, indexName string, indexValue string) (string, error)

GetObjectByIndex is to get object by index name and index value, which index name has create object index in the db

func (*DBService) GetObjectsWithinRangeByIndex

func (d *DBService) GetObjectsWithinRangeByIndex(indexName string, lessOrEqual string, greaterThan string) ([]string, error)

GetAllObjectsSortByIndex is to get all objects by sorted index

func (*DBService) GetSession

func (d *DBService) GetSession() *codedb.UndoSession

func (*DBService) GetSessionEx

func (d *DBService) GetSessionEx() *codedb.UndoSession

func (*DBService) LoadStateDB

func (d *DBService) LoadStateDB()

func (*DBService) Lock

func (d *DBService) Lock()

func (*DBService) NewBatch

func (d *DBService) NewBatch()

func (*DBService) NewIterator

func (d *DBService) NewIterator() iterator.Iterator

NewIterator is to create an iterator

func (*DBService) Push

func (d *DBService) Push(session *codedb.UndoSession)

func (*DBService) PushEx

func (d *DBService) PushEx(session *codedb.UndoSession)

func (*DBService) Put

func (d *DBService) Put(key []byte, value []byte) error

Put is to put record by key and value.

func (*DBService) ReleaseUndoInfo

func (d *DBService) ReleaseUndoInfo()

func (*DBService) ResetSession

func (d *DBService) ResetSession() error

func (*DBService) ResetSubSession

func (d *DBService) ResetSubSession() error

func (*DBService) Rollback

func (d *DBService) Rollback() error

Rollback is to rollback object

func (*DBService) RollbackAll

func (d *DBService) RollbackAll() error

func (*DBService) Seek

func (d *DBService) Seek(prefixKey []byte) ([]string, error)

Seek is to Seek db.

func (*DBService) SetObject

func (d *DBService) SetObject(objectName string, key string, objectValue string) error

SetObject is to set object by key and value. which should have key has create index.

func (*DBService) Squash

func (d *DBService) Squash()

func (*DBService) UnLock

func (d *DBService) UnLock()

func (*DBService) UndoFlush

func (d *DBService) UndoFlush()

type OptionDBApi

type OptionDBApi interface {
	IsOpDbConfigured() bool
	Insert(collection string, value interface{}) error
	Find(collection string, key string, value interface{}) (interface{}, error)
	Update(collection string, key string, value interface{}, updatekey string, updatevalue interface{}) error
}

type OptionDBService

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

func NewOptionDbService

func NewOptionDbService(optPath string) *OptionDBService

func (*OptionDBService) Close

func (d *OptionDBService) Close()

func (*OptionDBService) Find

func (d *OptionDBService) Find(collection string, key string, value interface{}) (interface{}, error)

Find is to find record in option db

func (*OptionDBService) Insert

func (d *OptionDBService) Insert(collection string, value interface{}) error

Insert is to insert record to option db

func (*OptionDBService) IsOpDbConfigured

func (d *OptionDBService) IsOpDbConfigured() bool

func (*OptionDBService) Update

func (d *OptionDBService) Update(collection string, key string, value interface{}, updatekey string, updatevalue interface{}) error

Update is to update record in option db

Directories

Path Synopsis
platform
kvdb
* file description: database for key-value * @Author: May Luo * @Date: 2017-12-04 * @Last Modified by: * @Last Modified time:
* file description: database for key-value * @Author: May Luo * @Date: 2017-12-04 * @Last Modified by: * @Last Modified time:

Jump to

Keyboard shortcuts

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