OSDN Git Service

clean
authorHAOYUatHZ <haoyu@protonmail.com>
Wed, 22 May 2019 22:25:46 +0000 (06:25 +0800)
committerHAOYUatHZ <haoyu@protonmail.com>
Wed, 22 May 2019 22:25:46 +0000 (06:25 +0800)
consensus/federation/federation.go
node/node.go

index 95d0513..526998d 100644 (file)
@@ -36,12 +36,14 @@ type federation struct {
 func parseFedConfig() *federation {
        fed := &federation{}
        if err := json.Unmarshal([]byte(fedCfgJson), fed); err != nil {
-               log.Fatalf("invalid federation config json")
+               log.Fatalln("invalid federation config json")
        }
 
        return fed
 }
 
+// CheckFedConfig checks the high-level rule for federation config, whereas
+// signers.Create checks the low-level rule
 func CheckFedConfig() error {
        fed := parseFedConfig()
        if len(fed.XPubs) <= 1 {
@@ -59,7 +61,7 @@ func GetFederation() *federation {
        // use 1 for AssetKeyIndex
        assetSigner, err := signers.Create("asset", fed.XPubs, fed.Quorum, 1, signers.BIP0032)
        if err != nil {
-               panic("fail to create federation assetSigner")
+               log.Fatalf("fail to create federation assetSigner: %v", err)
        }
 
        fed.Path = signers.GetBip0032Path(assetSigner, signers.AssetKeySpace)
@@ -68,7 +70,7 @@ func GetFederation() *federation {
        if pegInScript, err := buildPegInScript(derivedPKs, assetSigner.Quorum); err == nil {
                fed.PegInScript = pegInScript
        } else {
-               panic("fail to build peg-in script")
+               log.Fatalf("fail to build peg-in script: %v", err)
        }
 
        return fed
index 4673520..2869d6a 100644 (file)
@@ -62,10 +62,12 @@ func NewNode(config *cfg.Config) *Node {
        ctx := context.Background()
 
        if err := federation.CheckFedConfig(); err == nil {
+               fed := federation.GetFederation()
                log.WithFields(log.Fields{
-                       "module":     logModule,
-                       "fed_xpubs":  federation.GetFederation().XPubs,
-                       "fed_quorum": federation.GetFederation().Quorum,
+                       "module":          logModule,
+                       "fed_xpubs":       fed.XPubs,
+                       "fed_quorum":      fed.Quorum,
+                       "fed_peginscript": fed.PegInScript,
                }).Info()
        } else {
                cmn.Exit("Error: " + err.Error())