diff options
author | Wei-Ning Huang <w@dexon.org> | 2019-03-17 09:12:50 +0800 |
---|---|---|
committer | Wei-Ning Huang <w@dexon.org> | 2019-04-09 13:50:04 +0800 |
commit | 9d1b6a0d3f2645a84c6e2da29a933fb4a6f7f547 (patch) | |
tree | f6d859629fa413c3b3ed1624b5262798e6d5afac /dex/backend.go | |
parent | fc2f94990eeac244ccb50fea5d6fda63b67ccc69 (diff) | |
download | dexon-9d1b6a0d3f2645a84c6e2da29a933fb4a6f7f547.tar dexon-9d1b6a0d3f2645a84c6e2da29a933fb4a6f7f547.tar.gz dexon-9d1b6a0d3f2645a84c6e2da29a933fb4a6f7f547.tar.bz2 dexon-9d1b6a0d3f2645a84c6e2da29a933fb4a6f7f547.tar.lz dexon-9d1b6a0d3f2645a84c6e2da29a933fb4a6f7f547.tar.xz dexon-9d1b6a0d3f2645a84c6e2da29a933fb4a6f7f547.tar.zst dexon-9d1b6a0d3f2645a84c6e2da29a933fb4a6f7f547.zip |
dex: implement recovery mechanism (#258)
* dex: implement recovery mechanism
The DEXON recovery protocol allows us to use the Ethereum blockchain as a
fallback consensus chain to coordinate recovery.
* fix
Diffstat (limited to 'dex/backend.go')
-rw-r--r-- | dex/backend.go | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/dex/backend.go b/dex/backend.go index 056a6d221..6ee1a5fa1 100644 --- a/dex/backend.go +++ b/dex/backend.go @@ -21,6 +21,7 @@ import ( "fmt" "time" + "github.com/dexon-foundation/dexon-consensus/core/syncer" "github.com/dexon-foundation/dexon/accounts" "github.com/dexon-foundation/dexon/consensus" "github.com/dexon-foundation/dexon/consensus/dexcon" @@ -180,7 +181,12 @@ func New(ctx *node.ServiceContext, config *Config) (*Dexon, error) { dex.protocolManager = pm dex.network = NewDexconNetwork(pm) - dex.bp = NewBlockProposer(dex, dMoment) + recovery := NewRecovery(chainConfig.Recovery, config.RecoveryNetworkRPC, + dex.governance, config.PrivateKey) + watchCat := syncer.NewWatchCat(recovery, dex.governance, 10*time.Second, + time.Duration(chainConfig.Recovery.Timeout)*time.Second, log.Root()) + + dex.bp = NewBlockProposer(dex, watchCat, dMoment) return dex, nil } |