Fixed Public block creation. Added block logging

This commit is contained in:
obscuren 2014-05-21 12:09:28 +02:00
parent 07fe00c466
commit 05e4e97276
2 changed files with 14 additions and 13 deletions

@ -24,18 +24,9 @@ func NewPEthereum(manager ethchain.EthManager) *PEthereum {
func (lib *PEthereum) GetBlock(hexHash string) *PBlock { func (lib *PEthereum) GetBlock(hexHash string) *PBlock {
hash := ethutil.FromHex(hexHash) hash := ethutil.FromHex(hexHash)
block := lib.blockChain.GetBlock(hash) block := lib.blockChain.GetBlock(hash)
var blockInfo *PBlock return NewPBlock(block)
if block != nil {
blockInfo = &PBlock{Number: int(block.BlockInfo().Number), Hash: ethutil.Hex(block.Hash())}
} else {
blockInfo = &PBlock{Number: -1, Hash: ""}
}
return blockInfo
} }
func (lib *PEthereum) GetKey() *PKey { func (lib *PEthereum) GetKey() *PKey {

@ -8,16 +8,26 @@ import (
// Block interface exposed to QML // Block interface exposed to QML
type PBlock struct { type PBlock struct {
ref *ethchain.Block
Number int `json:"number"` Number int `json:"number"`
Hash string `json:"hash"` Hash string `json:"hash"`
} }
// Creates a new QML Block from a chain block // Creates a new QML Block from a chain block
func NewPBlock(block *ethchain.Block) *PBlock { func NewPBlock(block *ethchain.Block) *PBlock {
info := block.BlockInfo() if block == nil {
hash := hex.EncodeToString(block.Hash()) return nil
}
return &PBlock{Number: int(info.Number), Hash: hash} return &PBlock{ref: block, Number: int(block.Number.Uint64()), Hash: ethutil.Hex(block.Hash())}
}
func (self *PBlock) ToString() string {
if self.ref != nil {
return self.ref.String()
}
return ""
} }
type PTx struct { type PTx struct {