OSDN Git Service

Revert "update master (#487)" (#518)
[bytom/bytom.git] / blockchain / miner.go
index 4f7bea0..72c69ef 100644 (file)
@@ -1,33 +1,30 @@
 package blockchain
 
 import (
-       "github.com/bytom/protocol/bc"
-       "github.com/bytom/protocol/bc/types"
-)
+       log "github.com/sirupsen/logrus"
 
-// GetWorkResp is resp struct for API
-type GetWorkResp struct {
-       BlockHeader *types.BlockHeader `json:"block_header"`
-       Seed        *bc.Hash           `json:"seed"`
-}
+       "github.com/bytom/protocol/bc/legacy"
+)
 
-func (bcr *BlockchainReactor) GetWork() (*GetWorkResp, error) {
-       bh, err := bcr.miningPool.GetWork()
-       if err != nil {
-               return nil, err
+// Get the parameters of mining
+func (bcr *BlockchainReactor) getWork() *WorkResp {
+       var resp WorkResp
+       if block := bcr.mining.GetCurrentBlock(); block == nil {
+               return nil
+       } else {
+               resp.Header = block.BlockHeader
        }
 
-       seed, err := bcr.chain.GetSeed(bh.Height, &bh.PreviousBlockHash)
-       if err != nil {
-               return nil, err
-       }
+       return &resp
+}
 
-       return &GetWorkResp{
-               BlockHeader: bh,
-               Seed:        seed,
-       }, nil
+// Submit work for mining
+func (bcr *BlockchainReactor) submitWork(header legacy.BlockHeader) Response {
+       log.Infof("mining:---submitWork header:%v", header)
+       bcr.mining.NotifySpawnBlock(header)
+       return NewSuccessResponse(nil)
 }
 
-func (bcr *BlockchainReactor) SubmitWork(bh *types.BlockHeader) bool {
-       return bcr.miningPool.SubmitWork(bh)
+type WorkResp struct {
+       Header legacy.BlockHeader `json:"header"`
 }