Merge #12128: Refactor: One CBaseChainParams should be enough
1687cb4
Refactor: One CBaseChainParams should be enough (Jorge Timón)
Pull request description:
There's no need for class hierarchy with CBaseChainParams, it is just a struct with 2 fields.
This starts as a +10-43 diff
Tree-SHA512: 0a7dd64ab785416550b541787c6083540e4962d76b6cffa806bb3593aec2daf1752dfe65ac5cd51b34ad5c31dd8292c422b483fdd2d37d0b7e68725498ed4c2d
This commit is contained in:
commit
948c29cc0d
2 changed files with 6 additions and 43 deletions
|
@ -24,44 +24,6 @@ void AppendParamsHelpMessages(std::string& strUsage, bool debugHelp)
|
||||||
strUsage += HelpMessageOpt("-testnet", _("Use the test chain"));
|
strUsage += HelpMessageOpt("-testnet", _("Use the test chain"));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Main network
|
|
||||||
*/
|
|
||||||
class CBaseMainParams : public CBaseChainParams
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
CBaseMainParams()
|
|
||||||
{
|
|
||||||
nRPCPort = 8332;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Testnet (v3)
|
|
||||||
*/
|
|
||||||
class CBaseTestNetParams : public CBaseChainParams
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
CBaseTestNetParams()
|
|
||||||
{
|
|
||||||
nRPCPort = 18332;
|
|
||||||
strDataDir = "testnet3";
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Regression test
|
|
||||||
*/
|
|
||||||
class CBaseRegTestParams : public CBaseChainParams
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
CBaseRegTestParams()
|
|
||||||
{
|
|
||||||
nRPCPort = 18443;
|
|
||||||
strDataDir = "regtest";
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
static std::unique_ptr<CBaseChainParams> globalChainBaseParams;
|
static std::unique_ptr<CBaseChainParams> globalChainBaseParams;
|
||||||
|
|
||||||
const CBaseChainParams& BaseParams()
|
const CBaseChainParams& BaseParams()
|
||||||
|
@ -73,11 +35,11 @@ const CBaseChainParams& BaseParams()
|
||||||
std::unique_ptr<CBaseChainParams> CreateBaseChainParams(const std::string& chain)
|
std::unique_ptr<CBaseChainParams> CreateBaseChainParams(const std::string& chain)
|
||||||
{
|
{
|
||||||
if (chain == CBaseChainParams::MAIN)
|
if (chain == CBaseChainParams::MAIN)
|
||||||
return std::unique_ptr<CBaseChainParams>(new CBaseMainParams());
|
return MakeUnique<CBaseChainParams>("", 8332);
|
||||||
else if (chain == CBaseChainParams::TESTNET)
|
else if (chain == CBaseChainParams::TESTNET)
|
||||||
return std::unique_ptr<CBaseChainParams>(new CBaseTestNetParams());
|
return MakeUnique<CBaseChainParams>("testnet3", 18332);
|
||||||
else if (chain == CBaseChainParams::REGTEST)
|
else if (chain == CBaseChainParams::REGTEST)
|
||||||
return std::unique_ptr<CBaseChainParams>(new CBaseRegTestParams());
|
return MakeUnique<CBaseChainParams>("regtest", 18443);
|
||||||
else
|
else
|
||||||
throw std::runtime_error(strprintf("%s: Unknown chain %s.", __func__, chain));
|
throw std::runtime_error(strprintf("%s: Unknown chain %s.", __func__, chain));
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,9 +24,10 @@ public:
|
||||||
const std::string& DataDir() const { return strDataDir; }
|
const std::string& DataDir() const { return strDataDir; }
|
||||||
int RPCPort() const { return nRPCPort; }
|
int RPCPort() const { return nRPCPort; }
|
||||||
|
|
||||||
protected:
|
CBaseChainParams() = delete;
|
||||||
CBaseChainParams() {}
|
CBaseChainParams(const std::string& data_dir, int rpc_port) : nRPCPort(rpc_port), strDataDir(data_dir) {}
|
||||||
|
|
||||||
|
private:
|
||||||
int nRPCPort;
|
int nRPCPort;
|
||||||
std::string strDataDir;
|
std::string strDataDir;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue