本文整理汇总了Golang中github.com/FactomProject/FactomCode/common.DirBlockInfo.MarshalBinary方法的典型用法代码示例。如果您正苦于以下问题:Golang DirBlockInfo.MarshalBinary方法的具体用法?Golang DirBlockInfo.MarshalBinary怎么用?Golang DirBlockInfo.MarshalBinary使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/FactomProject/FactomCode/common.DirBlockInfo
的用法示例。
在下文中一共展示了DirBlockInfo.MarshalBinary方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: InsertDirBlockInfo
// Insert the Directory Block meta data into db
func (db *LevelDb) InsertDirBlockInfo(dirBlockInfo *common.DirBlockInfo) (err error) {
if dirBlockInfo.BTCTxHash == nil {
return
}
db.dbLock.Lock()
defer db.dbLock.Unlock()
if db.lbatch == nil {
db.lbatch = new(leveldb.Batch)
}
defer db.lbatch.Reset()
var key []byte = []byte{byte(TBL_DB_INFO)} // Table Name (1 bytes)
key = append(key, dirBlockInfo.DBHash.Bytes()...)
binaryDirBlockInfo, _ := dirBlockInfo.MarshalBinary()
db.lbatch.Put(key, binaryDirBlockInfo)
err = db.lDb.Write(db.lbatch, db.wo)
if err != nil {
return err
}
return nil
}
示例2: InsertDirBlockInfoMultiBatch
func (db *LevelDb) InsertDirBlockInfoMultiBatch(dirBlockInfo *common.DirBlockInfo) (err error) {
if dirBlockInfo == nil {
return nil
}
if dirBlockInfo.BTCTxHash == nil {
return
}
if db.lbatch == nil {
return fmt.Errorf("db.lbatch == nil")
}
if db.lbatch == nil {
db.lbatch = new(leveldb.Batch)
}
defer db.lbatch.Reset()
var key = []byte{byte(TBL_DB_INFO)} // Table Name (1 bytes)
key = append(key, dirBlockInfo.DBHash.Bytes()...)
binaryDirBlockInfo, _ := dirBlockInfo.MarshalBinary()
db.lbatch.Put(key, binaryDirBlockInfo)
return nil
}