Documentation ¶
Index ¶
- type BlockDBCommand
- type BlockDBCommandProcessor
- type BlockDBMessage
- type BlockchainListener
- type BlockchainOperator
- type CollectionInfoResponse
- type CommandExecutor
- type CommandProcessResult
- type DefaultBlockDBCommand
- type JsonCommandParser
- type LedgerSyncer
- type SelectResponse
- type StorageExecutor
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BlockDBCommand ¶
type BlockDBCommand interface { }
BlockDBCommand is the raw data operation applied on ledger. no additional info
type BlockDBCommandProcessor ¶
type BlockDBCommandProcessor interface {
Process(command BlockDBCommand) (CommandProcessResult, error) // better to be implemented in async way.
}
type BlockDBMessage ¶
type BlockDBMessage interface { }
BLockDBMessage is the enriched message including BlockDBCommand.
type BlockchainListener ¶
type BlockchainListener interface{}
type BlockchainOperator ¶
type BlockchainOperator interface {
EnqueueSendToLedger(command BlockDBMessage) error
}
type CollectionInfoResponse ¶
type CommandExecutor ¶
type CommandExecutor interface{}
type CommandProcessResult ¶
type DefaultBlockDBCommand ¶
type DefaultBlockDBCommand struct { }
type JsonCommandParser ¶
type JsonCommandParser interface {
FromJson(json string) (BlockDBCommand, error)
}
type LedgerSyncer ¶
type LedgerSyncer interface{}
type SelectResponse ¶
type StorageExecutor ¶
type StorageExecutor interface { //插入的json对应对bson形式;返回插入成功后的主键id Insert(ctx context.Context, collectionName string, val bson.M) (string, error) //在collect中删除主键id为hash Delete(ctx context.Context, collectionName string, id string) (int64, error) /** filter:筛选条件 为空:则表示全取 sort:排序条件 为空:则表示不排序 limit:查找出来的数据量;为0: 则表示全部 skip:跳过skip条文档 为0:则表示逐条取 skip+limit:跳过skip个文档后,取limit个文档 */ Select(ctx context.Context, collectionName string, filter bson.M, sort bson.M, limit int64, skip int64) (response SelectResponse, err error) //在collect中查找主键id为hash的文档 SelectById(ctx context.Context, collectionName string, id string) (response SelectResponse, err error) //将filter更新为update Update(ctx context.Context, collectionName string, filter, update bson.M, operation string) (count int64, err error) //将filter更新为update //UpdateById(ctx context.Context, collectionName string, id string, update bson.M, operation string) (count int64, err error) //创建collection 返回创建失败的错误信息;成功则返回nil CreateCollection(ctx context.Context, collectionName string) (err error) //创建索引,返回创建后的索引名字 CreateIndex(ctx context.Context, collectionName string, indexName, column string) (createdIndexName string, err error) //删除索引 DropIndex(ctx context.Context, collectionName string, indexName string) (err error) //返回该collect对应的数据库大小、索引大小、文档个数、索引个数 CollectionInfo(ctx context.Context, collection string) (resp CollectionInfoResponse, err error) //关闭连接 Close(ctx context.Context) error }
Click to show internal directories.
Click to hide internal directories.