本文整理汇总了Golang中github.com/FactomProject/FactomCode/common.DirectoryBlock.UnmarshalBinaryData方法的典型用法代码示例。如果您正苦于以下问题:Golang DirectoryBlock.UnmarshalBinaryData方法的具体用法?Golang DirectoryBlock.UnmarshalBinaryData怎么用?Golang DirectoryBlock.UnmarshalBinaryData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/FactomProject/FactomCode/common.DirectoryBlock
的用法示例。
在下文中一共展示了DirectoryBlock.UnmarshalBinaryData方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: FetchAllDBlocks
// FetchAllDBlocks gets all of the fbInfo
func (db *LevelDb) FetchAllDBlocks() (dBlocks []common.DirectoryBlock, err error) {
db.dbLock.Lock()
defer db.dbLock.Unlock()
var fromkey []byte = []byte{byte(TBL_DB)} // Table Name (1 bytes) // Timestamp (8 bytes)
var tokey []byte = []byte{byte(TBL_DB + 1)} // Table Name (1 bytes)
dBlockSlice := make([]common.DirectoryBlock, 0, 10)
iter := db.lDb.NewIterator(&util.Range{Start: fromkey, Limit: tokey}, db.ro)
for iter.Next() {
var dBlock common.DirectoryBlock
_, err := dBlock.UnmarshalBinaryData(iter.Value())
if err != nil {
return nil, err
}
//TODO: to be optimized??
dBlock.DBHash = common.Sha(iter.Value())
dBlockSlice = append(dBlockSlice, dBlock)
}
iter.Release()
err = iter.Error()
return dBlockSlice, nil
}