From 7a587feaa582fcecdcc0388f720e54614cb6b8f4 Mon Sep 17 00:00:00 2001 From: Jimmy Hu Date: Thu, 13 Dec 2018 10:45:29 +0800 Subject: dex, cmd: Add DMoment to command line (#87) --- cmd/gdex/main.go | 1 + cmd/utils/flags.go | 14 ++++++++++++++ 2 files changed, 15 insertions(+) (limited to 'cmd') diff --git a/cmd/gdex/main.go b/cmd/gdex/main.go index 1ca7cd766..9a1ef7bc9 100644 --- a/cmd/gdex/main.go +++ b/cmd/gdex/main.go @@ -98,6 +98,7 @@ var ( utils.MaxPeersFlag, utils.MaxPendingPeersFlag, utils.BlockProposerEnabledFlag, + utils.ConsensusDMomentFlag, utils.MiningEnabledFlag, utils.MinerThreadsFlag, utils.MinerLegacyThreadsFlag, diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go index 03b0841b0..971ccd349 100644 --- a/cmd/utils/flags.go +++ b/cmd/utils/flags.go @@ -326,6 +326,10 @@ var ( Name: "bp", Usage: "Enable block proposer mode (node set)", } + ConsensusDMomentFlag = cli.Uint64Flag{ + Name: "dmoment", + Usage: "Set the DMoment of DEXON Consensus (unix timestamp)", + } // Miner settings MiningEnabledFlag = cli.BoolFlag{ Name: "mine", @@ -1268,6 +1272,16 @@ func SetDexConfig(ctx *cli.Context, stack *node.Node, cfg *dex.Config) { if gen := ctx.GlobalInt(TrieCacheGenFlag.Name); gen > 0 { state.MaxTrieCacheGen = uint16(gen) } + if ctx.GlobalIsSet(ConsensusDMomentFlag.Name) { + cfg.DMoment = int64(ctx.GlobalUint64(ConsensusDMomentFlag.Name)) + } else { + // TODO(jimmy): default DMoment should be set based on networkId. + now := time.Now() + cfg.DMoment = time.Date( + now.Year(), now.Month(), now.Day(), + now.Hour(), now.Minute(), (now.Second()/5+1)*5, + 0, now.Location()).Unix() + } } // SetDashboardConfig applies dashboard related command line flags to the config. -- cgit v1.2.3