From 76e3cdf65fdb86c6e87e3e31c801fa5e0a4bbcfd Mon Sep 17 00:00:00 2001 From: Meng-Ying Yang Date: Wed, 9 Jan 2019 15:21:41 +0800 Subject: indexer: pass network-related params through config (#133) Pass following network related params: * Genesis block * Network ID And sync mode for indexer configuration. --- cmd/utils/flags.go | 4 ++++ indexer/config.go | 10 ++++++++++ 2 files changed, 14 insertions(+) diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go index 1f1db9fc3..bfe565c30 100644 --- a/cmd/utils/flags.go +++ b/cmd/utils/flags.go @@ -1311,6 +1311,10 @@ func setIndexerConfig(ctx *cli.Context, cfg *dex.Config) { cfg.Indexer.Plugin = ctx.GlobalString(IndexerPluginFlag.Name) cfg.Indexer.PluginFlags = ctx.GlobalString(IndexerPluginFlagsFlag.Name) + // copy required dex configs + cfg.Indexer.Genesis = cfg.Genesis + cfg.Indexer.NetworkID = cfg.NetworkId + cfg.Indexer.SyncMode = cfg.SyncMode } // SetDashboardConfig applies dashboard related command line flags to the config. diff --git a/indexer/config.go b/indexer/config.go index 396a23b66..0da9502a6 100644 --- a/indexer/config.go +++ b/indexer/config.go @@ -2,6 +2,9 @@ package indexer import ( "plugin" + + "github.com/dexon-foundation/dexon/core" + "github.com/dexon-foundation/dexon/dex/downloader" ) // Config is data sources related configs struct. @@ -14,6 +17,13 @@ type Config struct { // PluginFlags for construction if needed. PluginFlags string + + // The genesis block from dex.Config + Genesis *core.Genesis + + // Protocol options from dex.Config (partial) + NetworkID uint64 + SyncMode downloader.SyncMode } // NewIndexerFromConfig initialize exporter according to given config. -- cgit v1.2.3