@ -14,7 +14,6 @@ import (
"github.com/ethereum/go-ethereum/ethutil"
"github.com/ethereum/go-ethereum/event"
"github.com/ethereum/go-ethereum/logger"
"github.com/ethereum/go-ethereum/miner"
"github.com/ethereum/go-ethereum/p2p"
"github.com/ethereum/go-ethereum/state"
"github.com/ethereum/go-ethereum/whisper"
@ -35,7 +34,10 @@ type Backend interface {
StateDb ( ) ethutil . Database
EventMux ( ) * event . TypeMux
Whisper ( ) * whisper . Whisper
Miner ( ) * miner . Miner
IsMining ( ) bool
StartMining ( ) error
StopMining ( )
}
// Frontend should be implemented by users of XEth. Its methods are
@ -65,7 +67,6 @@ type XEth struct {
accountManager * accounts . Manager
state * State
whisper * Whisper
miner * miner . Miner
frontend Frontend
}
@ -87,7 +88,6 @@ func New(eth Backend, frontend Frontend) *XEth {
chainManager : eth . ChainManager ( ) ,
accountManager : eth . AccountManager ( ) ,
whisper : NewWhisper ( eth . Whisper ( ) ) ,
miner : eth . Miner ( ) ,
frontend : frontend ,
}
if frontend == nil {
@ -104,7 +104,6 @@ func (self *XEth) WithState(statedb *state.StateDB) *XEth {
blockProcessor : self . blockProcessor ,
chainManager : self . chainManager ,
whisper : self . whisper ,
miner : self . miner ,
}
xeth . state = NewState ( xeth , statedb )
@ -112,8 +111,7 @@ func (self *XEth) WithState(statedb *state.StateDB) *XEth {
}
func ( self * XEth ) State ( ) * State { return self . state }
func ( self * XEth ) Whisper ( ) * Whisper { return self . whisper }
func ( self * XEth ) Miner ( ) * miner . Miner { return self . miner }
func ( self * XEth ) Whisper ( ) * Whisper { return self . whisper }
func ( self * XEth ) BlockByHash ( strHash string ) * Block {
hash := fromHex ( strHash )
@ -172,18 +170,19 @@ func (self *XEth) PeerCount() int {
}
func ( self * XEth ) IsMining ( ) bool {
return self . miner . Mining ( )
return self . eth . Is Mining( )
}
func ( self * XEth ) SetMining ( shouldmine bool ) bool {
ismining := self . miner . Mining ( )
ismining := self . eth . Is Mining( )
if shouldmine && ! ismining {
self . miner . Start ( )
err := self . eth . StartMining ( )
return err == nil
}
if ismining && ! shouldmine {
self . miner . Stop ( )
self . eth . StopMining ( )
}
return self . miner . Mining ( )
return self . eth . Is Mining( )
}
func ( self * XEth ) IsListening ( ) bool {