コード例 #1
0
 private void Init()
 {
     lock (_locker) {
         if (!_isInited)
         {
             var repository             = NTMinerRoot.CreateServerRepository <PoolKernelData>();
             List <PoolKernelData> list = repository.GetAll().ToList();
             foreach (IPool pool in _root.PoolSet)
             {
                 foreach (ICoinKernel coinKernel in _root.CoinKernelSet.Where(a => a.CoinId == pool.CoinId))
                 {
                     PoolKernelData poolKernel = list.FirstOrDefault(a => a.PoolId == pool.GetId() && a.KernelId == coinKernel.KernelId);
                     if (poolKernel != null)
                     {
                         _dicById.Add(poolKernel.GetId(), poolKernel);
                     }
                     else
                     {
                         Guid poolKernelId = Guid.NewGuid();
                         _dicById.Add(poolKernelId, new PoolKernelData()
                         {
                             Id          = poolKernelId,
                             Args        = string.Empty,
                             Description = string.Empty,
                             KernelId    = coinKernel.KernelId,
                             PoolId      = pool.GetId()
                         });
                     }
                 }
             }
             _isInited = true;
         }
     }
 }
コード例 #2
0
        protected override void Init()
        {
            var repository             = _context.CreateServerRepository <PoolKernelData>();
            List <PoolKernelData> list = repository.GetAll().ToList();

            foreach (IPool pool in _context.PoolSet.AsEnumerable().ToArray())
            {
                foreach (ICoinKernel coinKernel in _context.CoinKernelSet.AsEnumerable().Where(a => a.CoinId == pool.CoinId).ToArray())
                {
                    PoolKernelData poolKernel = list.FirstOrDefault(a => a.PoolId == pool.GetId() && a.KernelId == coinKernel.KernelId);
                    if (poolKernel != null)
                    {
                        _dicById.Add(poolKernel.GetId(), poolKernel);
                    }
                    else
                    {
                        Guid poolKernelId = Guid.NewGuid();
                        _dicById.Add(poolKernelId, new PoolKernelData()
                        {
                            Id       = poolKernelId,
                            Args     = string.Empty,
                            KernelId = coinKernel.KernelId,
                            PoolId   = pool.GetId()
                        });
                    }
                }
            }
        }