public override void Configure(PoolConfig poolConfig, ClusterConfig clusterConfig) { _extraPoolConfig = poolConfig.Extra.SafeExtensionDataAs <CommerciumPoolConfigExtra>(); _extraPoolPaymentProcessingConfig = poolConfig.PaymentProcessing?.Extra?.SafeExtensionDataAs <CommerciumPoolPaymentProcessingConfigExtra>(); if (_extraPoolConfig?.MaxActiveJobs.HasValue == true) { _maxActiveJobs = _extraPoolConfig.MaxActiveJobs.Value; } base.Configure(poolConfig, clusterConfig); }
public virtual Task ConfigureAsync(ClusterConfig clusterConfig, PoolConfig poolConfig) { Contract.RequiresNonNull(poolConfig, nameof(poolConfig)); this.poolConfig = poolConfig; this.clusterConfig = clusterConfig; extraPoolConfig = poolConfig.Extra.SafeExtensionDataAs <CommerciumPoolConfigExtra>(); extraPoolPaymentProcessingConfig = poolConfig.PaymentProcessing.Extra.SafeExtensionDataAs <BitcoinPoolPaymentProcessingConfigExtra>(); coinProperties = BitcoinProperties.GetCoinProperties(poolConfig.Coin.Type, poolConfig.Coin.Algorithm); logger = LogUtil.GetPoolScopedLogger(typeof(CommerciumPayoutHandler), poolConfig); var jsonSerializerSettings = ctx.Resolve <JsonSerializerSettings>(); daemon = new DaemonClient(jsonSerializerSettings, messageBus, clusterConfig.ClusterName ?? poolConfig.PoolName, poolConfig.Id); daemon.Configure(extraPoolConfig.Wallets); return(Task.FromResult(true)); }