diff options
author | Jeffrey Wilcke <jeffrey@ethereum.org> | 2015-04-01 19:57:35 +0800 |
---|---|---|
committer | Jeffrey Wilcke <jeffrey@ethereum.org> | 2015-04-01 19:57:35 +0800 |
commit | c8e5d53a3909274f9d648d17c7003417e6e82a87 (patch) | |
tree | 5e26494b0ef3055e02758d801a50ec8e49f5e2cb /rpc/responses.go | |
parent | 4a4da9a24e39c45db6535ca5ad51dc1385f2491b (diff) | |
parent | dbf17105f62da03972fa9350f76485f5cc7aaeb8 (diff) | |
download | go-tangerine-c8e5d53a3909274f9d648d17c7003417e6e82a87.tar go-tangerine-c8e5d53a3909274f9d648d17c7003417e6e82a87.tar.gz go-tangerine-c8e5d53a3909274f9d648d17c7003417e6e82a87.tar.bz2 go-tangerine-c8e5d53a3909274f9d648d17c7003417e6e82a87.tar.lz go-tangerine-c8e5d53a3909274f9d648d17c7003417e6e82a87.tar.xz go-tangerine-c8e5d53a3909274f9d648d17c7003417e6e82a87.tar.zst go-tangerine-c8e5d53a3909274f9d648d17c7003417e6e82a87.zip |
Merge pull request #618 from tgerring/issue613
Issue #613
Diffstat (limited to 'rpc/responses.go')
-rw-r--r-- | rpc/responses.go | 24 |
1 files changed, 14 insertions, 10 deletions
diff --git a/rpc/responses.go b/rpc/responses.go index 3e9293fbb..45a2fa18b 100644 --- a/rpc/responses.go +++ b/rpc/responses.go @@ -29,12 +29,15 @@ type BlockRes struct { Uncles []*hexdata `json:"uncles"` } -func NewBlockRes(block *types.Block) *BlockRes { +func NewBlockRes(block *types.Block, fullTx bool) *BlockRes { + // TODO respect fullTx flag + if block == nil { return &BlockRes{} } res := new(BlockRes) + res.fullTx = fullTx res.BlockNumber = newHexNum(block.Number()) res.BlockHash = newHexData(block.Hash()) res.ParentHash = newHexData(block.ParentHash()) @@ -52,11 +55,20 @@ func NewBlockRes(block *types.Block) *BlockRes { // res.MinGasPrice = res.GasUsed = newHexNum(block.GasUsed()) res.UnixTimestamp = newHexNum(block.Time()) - res.Transactions = NewTransactionsRes(block.Transactions()) + + res.Transactions = make([]*TransactionRes, len(block.Transactions())) + for i, tx := range block.Transactions() { + res.Transactions[i] = NewTransactionRes(tx) + res.Transactions[i].BlockHash = res.BlockHash + res.Transactions[i].BlockNumber = res.BlockNumber + res.Transactions[i].TxIndex = newHexNum(i) + } + res.Uncles = make([]*hexdata, len(block.Uncles())) for i, uncle := range block.Uncles() { res.Uncles[i] = newHexData(uncle.Hash()) } + return res } @@ -91,14 +103,6 @@ func NewTransactionRes(tx *types.Transaction) *TransactionRes { return v } -func NewTransactionsRes(txs []*types.Transaction) []*TransactionRes { - v := make([]*TransactionRes, len(txs)) - for i, tx := range txs { - v[i] = NewTransactionRes(tx) - } - return v -} - // type FilterLogRes struct { // Hash string `json:"hash"` // Address string `json:"address"` |