Documentation ¶
Index ¶
- Variables
- type BlockStorage
- func (y *BlockStorage) AddBlock(block common.Block) error
- func (y *BlockStorage) Close()
- func (y *BlockStorage) GetBlockByHeight(block common.Block, height uint64) error
- func (y *BlockStorage) GetBlockBySeal(block common.Block, seal []byte) error
- func (y *BlockStorage) GetBlockByTxID(block common.Block, txID string) error
- func (y *BlockStorage) GetLastBlock(block common.Block) error
- func (y *BlockStorage) GetTransactionByTxID(transaction common.Transaction, txID string) error
- func (y *BlockStorage) GetValidator() common.Validator
- type BlockStorageManager
- type DBHandle
- func (h *DBHandle) Delete(key []byte, sync bool) error
- func (h *DBHandle) Get(key []byte) ([]byte, error)
- func (h *DBHandle) GetIteratorWithPrefix() key_value_db.KeyValueDBIterator
- func (h *DBHandle) Put(key []byte, value []byte, sync bool) error
- func (h *DBHandle) Snapshot() (map[string][]byte, error)
- func (h *DBHandle) WriteBatch(KVs map[string][]byte, sync bool) error
- type DBProvider
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNoRequiredParameters = errors.New("required parameters not passed")
View Source
var ErrNoValidator = errors.New("validator not defined")
View Source
var ErrPrevSealMismatch = errors.New("PrevSeal value mismatch")
View Source
var ErrSealValidation = errors.New("seal validation failed")
View Source
var ErrTxSealValidation = errors.New("txSeal validation failed")
Functions ¶
This section is empty.
Types ¶
type BlockStorage ¶
type BlockStorage struct { DBProvider *DBProvider // contains filtered or unexported fields }
func NewBlockStorage ¶
func NewBlockStorage(keyValueDB key_value_db.KeyValueDB, validator common.Validator, opts map[string]interface{}) (*BlockStorage, error)
NewBlockStorage 함수는 새로운 BlockStorage 객체를 생성한다. keyValueDB와 validator는 필수이며, opts는 현재 지원되지 않는다.
func (*BlockStorage) AddBlock ¶
func (y *BlockStorage) AddBlock(block common.Block) error
AddBlock 함수는 새로운 Block을 Yggdrasill의 DB에 저장한다. 저장하기 전에 validator로 Block을 검증한다.
func (*BlockStorage) GetBlockByHeight ¶
func (y *BlockStorage) GetBlockByHeight(block common.Block, height uint64) error
GetBlockByHeight 함수는 BlockStorage 객체에 저장된 Block을 height 값으로 찾아 반환한다.
func (*BlockStorage) GetBlockBySeal ¶
func (y *BlockStorage) GetBlockBySeal(block common.Block, seal []byte) error
GetBlockBySeal 함수는 BlockStorage 객체에 저장된 Block을 seal 값으로 찾아 반환한다.
func (*BlockStorage) GetBlockByTxID ¶
func (y *BlockStorage) GetBlockByTxID(block common.Block, txID string) error
GetBlockByTxID 함수는 BlockStorage 객체에 저장된 Block을 Transaction의 ID 값으로 찾아 반환한다.
func (*BlockStorage) GetLastBlock ¶
func (y *BlockStorage) GetLastBlock(block common.Block) error
GetLastBlock 함수는 BlockStorage 객체에 저장된 마지막 block을 반환한다.
func (*BlockStorage) GetTransactionByTxID ¶
func (y *BlockStorage) GetTransactionByTxID(transaction common.Transaction, txID string) error
GetTransactionByTxID 함수는 BlockStorage 객체에 저장된 Block 안에 저장된 Transaction을 ID 값으로 찾아 반환한다.
func (*BlockStorage) GetValidator ¶
func (y *BlockStorage) GetValidator() common.Validator
type BlockStorageManager ¶
type BlockStorageManager interface { Close() GetValidator() common.Validator AddBlock(block common.Block) error GetBlockByHeight(block common.Block, height uint64) error GetBlockBySeal(block common.Block, seal []byte) error GetBlockByTxID(block common.Block, txid string) error GetLastBlock(block common.Block) error GetTransactionByTxID(transaction common.Transaction, txid string) error }
type DBHandle ¶
type DBHandle struct {
// contains filtered or unexported fields
}
func (*DBHandle) GetIteratorWithPrefix ¶
func (h *DBHandle) GetIteratorWithPrefix() key_value_db.KeyValueDBIterator
type DBProvider ¶
type DBProvider struct {
// contains filtered or unexported fields
}
func CreateNewDBProvider ¶
func CreateNewDBProvider(keyValueDB key_value_db.KeyValueDB) *DBProvider
func (*DBProvider) Close ¶
func (p *DBProvider) Close()
func (*DBProvider) GetDBHandle ¶
func (p *DBProvider) GetDBHandle(dbName string) *DBHandle
Click to show internal directories.
Click to hide internal directories.