public AlgorithmManager(IPoolManager poolManager, IObjectFactory objectFactory) { _storage = new List <IHashAlgorithmStatistics>(); // add algorithms foreach (var pool in poolManager.GetAll()) { var query = _storage.FirstOrDefault(x => x.Name == pool.Config.Coin.Algorithm); if (query != null) { continue; } var statistics = objectFactory.GetHashAlgorithmStatistics(pool.Config.Coin.Algorithm); _storage.Add(statistics); } // assign pools to hash algorithms foreach (var item in _storage) { var algorithm = item; var pools = poolManager.GetAll().Where(p => p.Config.Coin.Algorithm == algorithm.Name); algorithm.AssignPools(pools); } }
public AlgorithmManager(IPoolManager poolManager, IObjectFactory objectFactory) { _storage = new List<IHashAlgorithmStatistics>(); // add algorithms foreach (var pool in poolManager.GetAll()) { var query = _storage.FirstOrDefault(x => x.Name == pool.Config.Coin.Algorithm); if (query != null) continue; var statistics = objectFactory.GetHashAlgorithmStatistics(pool.Config.Coin.Algorithm); _storage.Add(statistics); } // assign pools to hash algorithms foreach (var item in _storage) { var algorithm = item; var pools = poolManager.GetAll().Where(p => p.Config.Coin.Algorithm == algorithm.Name); algorithm.AssignPools(pools); } }
public AlgorithmManager(IPoolManager poolManager) { _storage = new List <IHashAlgorithm>(); // add algorithms foreach (var pool in poolManager.GetAll()) { if (_storage.Contains(pool.HashAlgorithm)) { continue; } _storage.Add(pool.HashAlgorithm); } // assign pools to hash algorithms foreach (var item in _storage) { var algorithm = item; var pools = poolManager.GetAll().Where(p => p.Config.Coin.Algorithm == algorithm.GetType().Name.ToLower()); algorithm.AssignPools(pools); } }
public AlgorithmManager(IPoolManager poolManager) { _storage = new List<IHashAlgorithm>(); // add algorithms foreach (var pool in poolManager.GetAll()) { if (_storage.Contains(pool.HashAlgorithm)) continue; _storage.Add(pool.HashAlgorithm); } // assign pools to hash algorithms foreach (var item in _storage) { var algorithm = item; var pools = poolManager.GetAll().Where(p => p.Config.Coin.Algorithm == algorithm.GetType().Name.ToLower()); algorithm.AssignPools(pools); } }