mock

package
v0.0.0-...-f8b7a73 Latest Latest
Warning

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

Go to latest
Published: Mar 16, 2019 License: GPL-3.0 Imports: 3 Imported by: 0

Documentation

Overview

包模拟定义了不同实现使用的类型 模拟仓库。

模拟存储的实现位于目录中 在此包下:

-db-leveldb后端 -mem-内存映射后端 -rpc-可以连接到其他后端的rpc客户端

模拟存储可以实现导入和导出接口 用于导入和导出它们包含的所有块数据。 导出的文件是一个tar存档,其中所有文件的名称为 块键和内容的十六进制表示法 具有json编码的exportedchunk结构。导出格式 应该在所有模拟存储实现中保留。

Index

Constants

This section is empty.

Variables

View Source
var ErrNotFound = errors.New("not found")

errnotfound表示找不到块。

Functions

This section is empty.

Types

type ExportedChunk

type ExportedChunk struct {
	Data  []byte           `json:"d"`
	Addrs []common.Address `json:"a"`
}

exportedchunk是保存在tar存档中的结构,用于 每个块都是JSON编码的字节。

type Exporter

type Exporter interface {
	Export(w io.Writer) (n int, err error)
}

导出器定义用于导出模拟存储数据的方法 去焦油档案馆。

type GlobalStorer

type GlobalStorer interface {
	Get(addr common.Address, key []byte) (data []byte, err error)
	Put(addr common.Address, key []byte, data []byte) error
	Delete(addr common.Address, key []byte) error
	HasKey(addr common.Address, key []byte) bool
	//newnodestore创建nodestore的实例
	//用于单个群节点
	//地址地址
	NewNodeStore(addr common.Address) *NodeStore
}

GlobalStrer定义模拟数据库存储的方法 存储所有群节点的块数据。 在测试中用来构造模拟节点库 并跟踪和验证块。

type Importer

type Importer interface {
	Import(r io.Reader) (n int, err error)
}

导入程序定义导入模拟存储数据的方法 从导出的tar存档。

type NodeStore

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

nodestore保存节点地址和对globalStore的引用 为了只访问和存储一个节点的块数据。

func NewNodeStore

func NewNodeStore(addr common.Address, store GlobalStorer) *NodeStore

new nodestore创建nodestore的新实例 使用提供地址的GlobalStrer对数据进行分组。

func (*NodeStore) Delete

func (n *NodeStore) Delete(key []byte) error

删除删除具有地址的节点的键的块数据 在节点存储初始化时提供。

func (*NodeStore) Get

func (n *NodeStore) Get(key []byte) (data []byte, err error)

get返回具有地址的节点的键的块数据 在节点存储初始化时提供。

func (*NodeStore) Put

func (n *NodeStore) Put(key []byte, data []byte) error

Put为具有地址的节点的键保存块数据 在节点存储初始化时提供。

Directories

Path Synopsis
包DB实现了一个模拟存储,它将所有块数据保存在LevelDB数据库中。
包DB实现了一个模拟存储,它将所有块数据保存在LevelDB数据库中。
package mem实现了一个模拟存储,将所有块数据保存在内存中。
package mem实现了一个模拟存储,将所有块数据保存在内存中。
package rpc实现一个连接到集中模拟存储的rpc客户机。
package rpc实现一个连接到集中模拟存储的rpc客户机。
包测试提供用于测试的函数 GlobalStrer实施。
包测试提供用于测试的函数 GlobalStrer实施。

Jump to

Keyboard shortcuts

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