From 8ae8976f7fcab81bd8c25fa0a76d46572e400872 Mon Sep 17 00:00:00 2001
From: Wei-Ning Huang <w@dexon.org>
Date: Fri, 19 Oct 2018 16:31:44 +0800
Subject: core: vm: add blockReward to governance

---
 params/config.go            | 10 +++++-----
 params/gen_dexcon_config.go | 22 +++++++++++-----------
 2 files changed, 16 insertions(+), 16 deletions(-)

(limited to 'params')

diff --git a/params/config.go b/params/config.go
index 45f515c7a..fe21e101d 100644
--- a/params/config.go
+++ b/params/config.go
@@ -223,8 +223,9 @@ func (c *CliqueConfig) String() string {
 
 // DexconConfig is the consensus engine configs for DEXON consensus.
 type DexconConfig struct {
-	Owner            common.Address `json:"owner"`
 	GenesisCRSText   string         `json:"genesisCRSText"`
+	Owner            common.Address `json:"owner"`
+	BlockReward      *big.Int       `json:"blockReward"`
 	NumChains        uint32         `json:"numChains"`
 	LambdaBA         uint64         `json:"lambdaBA"`
 	LambdaDKG        uint64         `json:"lambdaDKG"`
@@ -235,7 +236,6 @@ type DexconConfig struct {
 	RoundInterval    uint64         `json:"roundInterval"`
 	MinBlockInterval uint64         `json:"minBlockInterval"`
 	MaxBlockInterval uint64         `json:"maxBlockInterval"`
-	BlockReward      *big.Int       `json:"blockReward"`
 }
 
 type dexconConfigSpecMarshaling struct {
@@ -244,9 +244,10 @@ type dexconConfigSpecMarshaling struct {
 
 // String implements the stringer interface, returning the consensus engine details.
 func (d *DexconConfig) String() string {
-	return fmt.Sprintf("{Owner: %v GenesisCRSText: %v NumChains: %v LambdaBA: %v LambdaDKG: %v K: %v PhiRatio: %v NotarySetSize: %v DKGSetSize: %v RoundInterval: %v MinBlockInterval: %v MaxBlockInterval: %v BlockReward: %v",
-		d.Owner,
+	return fmt.Sprintf("{GenesisCRSText: %v Owner: %v BlockReward: %v NumChains: %v LambdaBA: %v LambdaDKG: %v K: %v PhiRatio: %v NotarySetSize: %v DKGSetSize: %v RoundInterval: %v MinBlockInterval: %v MaxBlockInterval: %v BlockReward: %v",
 		d.GenesisCRSText,
+		d.Owner,
+		d.BlockReward,
 		d.NumChains,
 		d.LambdaBA,
 		d.LambdaDKG,
@@ -257,7 +258,6 @@ func (d *DexconConfig) String() string {
 		d.RoundInterval,
 		d.MinBlockInterval,
 		d.MaxBlockInterval,
-		d.BlockReward,
 	)
 }
 
diff --git a/params/gen_dexcon_config.go b/params/gen_dexcon_config.go
index e53560e47..f81951140 100644
--- a/params/gen_dexcon_config.go
+++ b/params/gen_dexcon_config.go
@@ -15,8 +15,9 @@ var _ = (*dexconConfigSpecMarshaling)(nil)
 // MarshalJSON marshals as JSON.
 func (d DexconConfig) MarshalJSON() ([]byte, error) {
 	type DexconConfig struct {
-		Owner            common.Address        `json:"owner"`
 		GenesisCRSText   string                `json:"genesisCRSText"`
+		Owner            common.Address        `json:"owner"`
+		BlockReward      *math.HexOrDecimal256 `json:"blockReward"`
 		NumChains        uint32                `json:"numChains"`
 		LambdaBA         uint64                `json:"lambdaBA"`
 		LambdaDKG        uint64                `json:"lambdaDKG"`
@@ -27,11 +28,11 @@ func (d DexconConfig) MarshalJSON() ([]byte, error) {
 		RoundInterval    uint64                `json:"roundInterval"`
 		MinBlockInterval uint64                `json:"minBlockInterval"`
 		MaxBlockInterval uint64                `json:"maxBlockInterval"`
-		BlockReward      *math.HexOrDecimal256 `json:"blockReward"`
 	}
 	var enc DexconConfig
-	enc.Owner = d.Owner
 	enc.GenesisCRSText = d.GenesisCRSText
+	enc.Owner = d.Owner
+	enc.BlockReward = (*math.HexOrDecimal256)(d.BlockReward)
 	enc.NumChains = d.NumChains
 	enc.LambdaBA = d.LambdaBA
 	enc.LambdaDKG = d.LambdaDKG
@@ -42,15 +43,15 @@ func (d DexconConfig) MarshalJSON() ([]byte, error) {
 	enc.RoundInterval = d.RoundInterval
 	enc.MinBlockInterval = d.MinBlockInterval
 	enc.MaxBlockInterval = d.MaxBlockInterval
-	enc.BlockReward = (*math.HexOrDecimal256)(d.BlockReward)
 	return json.Marshal(&enc)
 }
 
 // UnmarshalJSON unmarshals from JSON.
 func (d *DexconConfig) UnmarshalJSON(input []byte) error {
 	type DexconConfig struct {
-		Owner            *common.Address       `json:"owner"`
 		GenesisCRSText   *string               `json:"genesisCRSText"`
+		Owner            *common.Address       `json:"owner"`
+		BlockReward      *math.HexOrDecimal256 `json:"blockReward"`
 		NumChains        *uint32               `json:"numChains"`
 		LambdaBA         *uint64               `json:"lambdaBA"`
 		LambdaDKG        *uint64               `json:"lambdaDKG"`
@@ -61,17 +62,19 @@ func (d *DexconConfig) UnmarshalJSON(input []byte) error {
 		RoundInterval    *uint64               `json:"roundInterval"`
 		MinBlockInterval *uint64               `json:"minBlockInterval"`
 		MaxBlockInterval *uint64               `json:"maxBlockInterval"`
-		BlockReward      *math.HexOrDecimal256 `json:"blockReward"`
 	}
 	var dec DexconConfig
 	if err := json.Unmarshal(input, &dec); err != nil {
 		return err
 	}
+	if dec.GenesisCRSText != nil {
+		d.GenesisCRSText = *dec.GenesisCRSText
+	}
 	if dec.Owner != nil {
 		d.Owner = *dec.Owner
 	}
-	if dec.GenesisCRSText != nil {
-		d.GenesisCRSText = *dec.GenesisCRSText
+	if dec.BlockReward != nil {
+		d.BlockReward = (*big.Int)(dec.BlockReward)
 	}
 	if dec.NumChains != nil {
 		d.NumChains = *dec.NumChains
@@ -103,8 +106,5 @@ func (d *DexconConfig) UnmarshalJSON(input []byte) error {
 	if dec.MaxBlockInterval != nil {
 		d.MaxBlockInterval = *dec.MaxBlockInterval
 	}
-	if dec.BlockReward != nil {
-		d.BlockReward = (*big.Int)(dec.BlockReward)
-	}
 	return nil
 }
-- 
cgit v1.2.3