public override async Task ConfigureAsync(ClusterConfig clusterConfig, PoolConfig poolConfig) { await base.ConfigureAsync(clusterConfig, poolConfig); poolExtraConfig = poolConfig.Extra.SafeExtensionDataAs <ZCashPoolConfigExtra>(); // detect network var blockchainInfoResponse = await daemon.ExecuteCmdSingleAsync <BlockchainInfo>(BitcoinCommands.GetBlockchainInfo); if (blockchainInfoResponse.Response.Chain.ToLower() == "test") { networkType = BitcoinNetworkType.Test; } else if (blockchainInfoResponse.Response.Chain.ToLower() == "regtest") { networkType = BitcoinNetworkType.RegTest; } else { networkType = BitcoinNetworkType.Main; } // lookup config if (ZCashConstants.Chains.TryGetValue(poolConfig.Coin.Type, out var coinbaseTx)) { coinbaseTx.TryGetValue(networkType, out chainConfig); } // detect z_shieldcoinbase support var response = await daemon.ExecuteCmdSingleAsync <JObject>(ZCashCommands.ZShieldCoinbase); supportsNativeShielding = response.Error.Code != (int)BitcoinRPCErrorCode.RPC_METHOD_NOT_FOUND; }
public override void Configure(PoolConfig poolConfig, ClusterConfig clusterConfig) { base.Configure(poolConfig, clusterConfig); extraConfig = poolConfig.Extra.SafeExtensionDataAs <ZCashPoolConfigExtra>(); if (string.IsNullOrEmpty(extraConfig?.ZAddress)) { logger.ThrowLogPoolStartupException($"Pool z-address is not configured"); } }
public override async Task ConfigureAsync(ClusterConfig clusterConfig, PoolConfig poolConfig) { await base.ConfigureAsync(clusterConfig, poolConfig); poolExtraConfig = poolConfig.Extra.SafeExtensionDataAs <ZCashPoolConfigExtra>(); }
public override void Configure(PoolConfig poolConfig, ClusterConfig clusterConfig) { zcashExtraPoolConfig = poolConfig.Extra.SafeExtensionDataAs <ZCashPoolConfigExtra>(); base.Configure(poolConfig, clusterConfig); }
public override void Configure(ClusterConfig clusterConfig, PoolConfig poolConfig) { base.Configure(clusterConfig, poolConfig); poolExtraConfig = poolConfig.Extra.SafeExtensionDataAs <ZCashPoolConfigExtra>(); }