Exemple #1
0
 /// <summary>
 /// 上报算力时。
 /// 因为只有MinerData具有的成员发生了变化时才需要持久化所以该非法输出isMinerDataChanged参数以表示MinerData的成员是否发生了变化。
 /// </summary>
 /// <param name="speedData"></param>
 /// <param name="minerIp"></param>
 /// <param name="isMinerDataChanged"></param>
 public void Update(ISpeedData speedData, string minerIp, out bool isMinerDataChanged)
 {
     Update(speedData, out isMinerDataChanged);
     if (!isMinerDataChanged && minerIp != this.MinerIp)
     {
         isMinerDataChanged = true;
     }
     this.MinerIp = minerIp;
 }
Exemple #2
0
 public static ClientData Create(ISpeedData speedData, string minerIp)
 {
     return(new ClientData()
     {
         Id = ObjectId.NewObjectId().ToString(),
         MinerName = string.Empty,
         MinerIp = minerIp,
         CreatedOn = DateTime.Now,
         ModifiedOn = DateTime.Now,
         GroupId = Guid.Empty,
         WorkId = Guid.Empty,
         WindowsLoginName = string.Empty,
         WindowsPassword = string.Empty,
         MACAddress = speedData.MACAddress,
         LocalIp = speedData.LocalIp,
         ClientId = speedData.ClientId,
         IsAutoBoot = speedData.IsAutoBoot,
         IsAutoStart = speedData.IsAutoStart,
         AutoStartDelaySeconds = speedData.AutoStartDelaySeconds,
         IsAutoRestartKernel = speedData.IsAutoRestartKernel,
         AutoRestartKernelTimes = speedData.AutoRestartKernelTimes,
         IsNoShareRestartKernel = speedData.IsNoShareRestartKernel,
         NoShareRestartKernelMinutes = speedData.NoShareRestartKernelMinutes,
         IsNoShareRestartComputer = speedData.IsNoShareRestartComputer,
         NoShareRestartComputerMinutes = speedData.NoShareRestartComputerMinutes,
         IsPeriodicRestartKernel = speedData.IsPeriodicRestartKernel,
         PeriodicRestartKernelHours = speedData.PeriodicRestartKernelHours,
         IsPeriodicRestartComputer = speedData.IsPeriodicRestartComputer,
         PeriodicRestartComputerHours = speedData.PeriodicRestartComputerHours,
         PeriodicRestartComputerMinutes = speedData.PeriodicRestartComputerMinutes,
         PeriodicRestartKernelMinutes = speedData.PeriodicRestartKernelMinutes,
         IsAutoStopByCpu = speedData.IsAutoStopByCpu,
         IsAutoStartByCpu = speedData.IsAutoStartByCpu,
         CpuStopTemperature = speedData.CpuStopTemperature,
         CpuStartTemperature = speedData.CpuStartTemperature,
         CpuLETemperatureSeconds = speedData.CpuLETemperatureSeconds,
         CpuGETemperatureSeconds = speedData.CpuGETemperatureSeconds,
         GpuDriver = speedData.GpuDriver,
         GpuType = speedData.GpuType,
         OSName = speedData.OSName,
         OSVirtualMemoryMb = speedData.OSVirtualMemoryMb,
         GpuInfo = speedData.GpuInfo,
         Version = speedData.Version,
         IsMining = speedData.IsMining,
         BootOn = speedData.BootOn,
         MineStartedOn = speedData.MineStartedOn,
         MainCoinCode = speedData.MainCoinCode,
         MainCoinTotalShare = speedData.MainCoinTotalShare,
         MainCoinRejectShare = speedData.MainCoinRejectShare,
         MainCoinSpeed = speedData.MainCoinSpeed,
         MainCoinPool = speedData.MainCoinPool,
         MainCoinWallet = speedData.MainCoinWallet,
         Kernel = speedData.Kernel,
         IsDualCoinEnabled = speedData.IsDualCoinEnabled,
         DualCoinPool = speedData.DualCoinPool,
         DualCoinWallet = speedData.DualCoinWallet,
         DualCoinCode = speedData.DualCoinCode,
         DualCoinTotalShare = speedData.DualCoinTotalShare,
         DualCoinRejectShare = speedData.DualCoinRejectShare,
         DualCoinSpeed = speedData.DualCoinSpeed,
         KernelCommandLine = speedData.KernelCommandLine,
         GpuTable = speedData.GpuTable,
         MineWorkId = speedData.MineWorkId,
         MineWorkName = speedData.MineWorkName,
         ClientName = speedData.MinerName,
         DiskSpace = speedData.DiskSpace,
         MainCoinPoolDelay = speedData.MainCoinPoolDelay,
         DualCoinPoolDelay = speedData.DualCoinPoolDelay,
         IsFoundOneGpuShare = speedData.IsFoundOneGpuShare,
         IsRejectOneGpuShare = speedData.IsRejectOneGpuShare,
         IsGotOneIncorrectGpuShare = speedData.IsGotOneIncorrectGpuShare,
         CpuTemperature = speedData.CpuTemperature,
         CpuPerformance = speedData.CpuPerformance,
         KernelSelfRestartCount = speedData.KernelSelfRestartCount,
         LocalServerMessageTimestamp = speedData.LocalServerMessageTimestamp,
         IsRaiseHighCpuEvent = speedData.IsRaiseHighCpuEvent,
         HighCpuPercent = speedData.HighCpuPercent,
         HighCpuSeconds = speedData.HighCpuSeconds
     });
 }
Exemple #3
0
        public void Update(ISpeedData speedData)
        {
            if (speedData == null)
            {
                return;
            }
            _preUpdateOn = DateTime.Now;
            if (_preMainCoin != this.MainCoinCode)
            {
                _preMainCoinShare       = 0;
                _preMainCoinRejectShare = 0;
            }
            else
            {
                _preMainCoinShare       = this.MainCoinTotalShare;
                _preMainCoinRejectShare = this.MainCoinRejectShare;
            }
            _preMainCoin = this.MainCoinCode;
            if (_preDualCoin != this.DualCoinCode)
            {
                _preDualCoinShare       = 0;
                _preDualCoinRejectShare = 0;
            }
            else
            {
                _preDualCoinShare       = this.DualCoinTotalShare;
                _preDualCoinRejectShare = this.DualCoinRejectShare;
            }
            _preDualCoin = this.DualCoinCode;

            this.ClientId = speedData.ClientId;
            if (!string.IsNullOrEmpty(speedData.MACAddress))
            {
                this.MACAddress = speedData.MACAddress;
            }
            if (!string.IsNullOrEmpty(speedData.LocalIp))
            {
                this.LocalIp = speedData.LocalIp;
            }
            this.IsAutoBoot                     = speedData.IsAutoBoot;
            this.IsAutoStart                    = speedData.IsAutoStart;
            this.AutoStartDelaySeconds          = speedData.AutoStartDelaySeconds;
            this.IsAutoRestartKernel            = speedData.IsAutoRestartKernel;
            this.AutoRestartKernelTimes         = speedData.AutoRestartKernelTimes;
            this.IsNoShareRestartKernel         = speedData.IsNoShareRestartKernel;
            this.NoShareRestartKernelMinutes    = speedData.NoShareRestartKernelMinutes;
            this.IsNoShareRestartComputer       = speedData.IsNoShareRestartComputer;
            this.NoShareRestartComputerMinutes  = speedData.NoShareRestartComputerMinutes;
            this.IsPeriodicRestartKernel        = speedData.IsPeriodicRestartKernel;
            this.PeriodicRestartKernelHours     = speedData.PeriodicRestartKernelHours;
            this.IsPeriodicRestartComputer      = speedData.IsPeriodicRestartComputer;
            this.PeriodicRestartComputerHours   = speedData.PeriodicRestartComputerHours;
            this.PeriodicRestartComputerMinutes = speedData.PeriodicRestartComputerMinutes;
            this.PeriodicRestartKernelMinutes   = speedData.PeriodicRestartKernelMinutes;
            this.IsAutoStopByCpu                = speedData.IsAutoStopByCpu;
            this.IsAutoStartByCpu               = speedData.IsAutoStartByCpu;
            this.CpuStopTemperature             = speedData.CpuStopTemperature;
            this.CpuStartTemperature            = speedData.CpuStartTemperature;
            this.CpuLETemperatureSeconds        = speedData.CpuLETemperatureSeconds;
            this.CpuGETemperatureSeconds        = speedData.CpuGETemperatureSeconds;
            this.GpuDriver         = speedData.GpuDriver;
            this.GpuType           = speedData.GpuType;
            this.OSName            = speedData.OSName;
            this.OSVirtualMemoryMb = speedData.OSVirtualMemoryMb;
            this.GpuInfo           = speedData.GpuInfo;

            this.Version                     = speedData.Version;
            this.IsMining                    = speedData.IsMining;
            this.BootOn                      = speedData.BootOn;
            this.MineStartedOn               = speedData.MineStartedOn;
            this.ClientName                  = speedData.MinerName;
            this.DiskSpace                   = speedData.DiskSpace;
            this.ModifiedOn                  = DateTime.Now;
            this.MainCoinCode                = speedData.MainCoinCode;
            this.MainCoinTotalShare          = speedData.MainCoinTotalShare;
            this.MainCoinRejectShare         = speedData.MainCoinRejectShare;
            this.MainCoinSpeed               = speedData.MainCoinSpeed;
            this.MainCoinPool                = speedData.MainCoinPool;
            this.MainCoinWallet              = speedData.MainCoinWallet;
            this.Kernel                      = speedData.Kernel;
            this.IsDualCoinEnabled           = speedData.IsDualCoinEnabled;
            this.DualCoinPool                = speedData.DualCoinPool;
            this.DualCoinWallet              = speedData.DualCoinWallet;
            this.DualCoinCode                = speedData.DualCoinCode;
            this.DualCoinTotalShare          = speedData.DualCoinTotalShare;
            this.DualCoinRejectShare         = speedData.DualCoinRejectShare;
            this.DualCoinSpeed               = speedData.DualCoinSpeed;
            this.KernelCommandLine           = speedData.KernelCommandLine;
            this.GpuTable                    = speedData.GpuTable;
            this.MainCoinPoolDelay           = speedData.MainCoinPoolDelay;
            this.DualCoinPoolDelay           = speedData.DualCoinPoolDelay;
            this.IsFoundOneGpuShare          = speedData.IsFoundOneGpuShare;
            this.IsRejectOneGpuShare         = speedData.IsRejectOneGpuShare;
            this.IsGotOneIncorrectGpuShare   = speedData.IsGotOneIncorrectGpuShare;
            this.CpuPerformance              = speedData.CpuPerformance;
            this.CpuTemperature              = speedData.CpuTemperature;
            this.MineWorkId                  = speedData.MineWorkId;
            this.MineWorkName                = speedData.MineWorkName;
            this.KernelSelfRestartCount      = speedData.KernelSelfRestartCount;
            this.LocalServerMessageTimestamp = speedData.LocalServerMessageTimestamp;
            this.IsRaiseHighCpuEvent         = speedData.IsRaiseHighCpuEvent;
            this.HighCpuPercent              = speedData.HighCpuPercent;
            this.HighCpuSeconds              = speedData.HighCpuSeconds;
        }
Exemple #4
0
 public void Update(ISpeedData speedData, string minerIp)
 {
     this.MinerIp = minerIp;
     Update(speedData);
 }
Exemple #5
0
 /// <summary>
 /// 上报算力时和拉取算力时。
 /// 因为只有MinerData具有的成员发生了变化时才需要持久化所以该非法输出isMinerDataChanged参数以表示MinerData的成员是否发生了变化。
 /// </summary>
 /// <param name="speedData"></param>
 /// <param name="isMinerDataChanged"></param>
 public void Update(ISpeedData speedData, out bool isMinerDataChanged)
 {
     isMinerDataChanged = false;
     if (speedData == null)
     {
         return;
     }
     _preUpdateOn = DateTime.Now;
     if (_preMainCoin != this.MainCoinCode)
     {
         _preMainCoinShare       = 0;
         _preMainCoinRejectShare = 0;
     }
     else
     {
         _preMainCoinShare       = this.MainCoinTotalShare;
         _preMainCoinRejectShare = this.MainCoinRejectShare;
     }
     _preMainCoin = this.MainCoinCode;
     if (_preDualCoin != this.DualCoinCode)
     {
         _preDualCoinShare       = 0;
         _preDualCoinRejectShare = 0;
     }
     else
     {
         _preDualCoinShare       = this.DualCoinTotalShare;
         _preDualCoinRejectShare = this.DualCoinRejectShare;
     }
     _preDualCoin = this.DualCoinCode;
     #region MinerData
     if (!isMinerDataChanged)
     {
         isMinerDataChanged = this.ClientId != speedData.ClientId;
     }
     this.ClientId = speedData.ClientId;
     if (!isMinerDataChanged)
     {
         isMinerDataChanged = this.MACAddress != speedData.MACAddress;
     }
     this.MACAddress = speedData.MACAddress;
     if (!isMinerDataChanged)
     {
         isMinerDataChanged = this.LocalIp != speedData.LocalIp;
     }
     this.LocalIp = speedData.LocalIp;
     if (!isMinerDataChanged)
     {
         isMinerDataChanged = this.MinerName != speedData.MinerName;
     }
     this.MinerName = speedData.MinerName;
     if (!isMinerDataChanged)
     {
         isMinerDataChanged = this.IsOuterUserEnabled != speedData.IsOuterUserEnabled;
     }
     this.IsOuterUserEnabled = speedData.IsOuterUserEnabled;
     #endregion
     this.MineContextId                  = speedData.MineContextId;
     this.IsAutoBoot                     = speedData.IsAutoBoot;
     this.IsAutoStart                    = speedData.IsAutoStart;
     this.AutoStartDelaySeconds          = speedData.AutoStartDelaySeconds;
     this.IsAutoRestartKernel            = speedData.IsAutoRestartKernel;
     this.AutoRestartKernelTimes         = speedData.AutoRestartKernelTimes;
     this.IsNoShareRestartKernel         = speedData.IsNoShareRestartKernel;
     this.NoShareRestartKernelMinutes    = speedData.NoShareRestartKernelMinutes;
     this.IsNoShareRestartComputer       = speedData.IsNoShareRestartComputer;
     this.NoShareRestartComputerMinutes  = speedData.NoShareRestartComputerMinutes;
     this.IsPeriodicRestartKernel        = speedData.IsPeriodicRestartKernel;
     this.PeriodicRestartKernelHours     = speedData.PeriodicRestartKernelHours;
     this.IsPeriodicRestartComputer      = speedData.IsPeriodicRestartComputer;
     this.PeriodicRestartComputerHours   = speedData.PeriodicRestartComputerHours;
     this.PeriodicRestartComputerMinutes = speedData.PeriodicRestartComputerMinutes;
     this.PeriodicRestartKernelMinutes   = speedData.PeriodicRestartKernelMinutes;
     this.IsAutoStopByCpu                = speedData.IsAutoStopByCpu;
     this.IsAutoStartByCpu               = speedData.IsAutoStartByCpu;
     this.CpuStopTemperature             = speedData.CpuStopTemperature;
     this.CpuStartTemperature            = speedData.CpuStartTemperature;
     this.CpuLETemperatureSeconds        = speedData.CpuLETemperatureSeconds;
     this.CpuGETemperatureSeconds        = speedData.CpuGETemperatureSeconds;
     this.CpuPerformance                 = speedData.CpuPerformance;
     this.CpuTemperature                 = speedData.CpuTemperature;
     this.IsRaiseHighCpuEvent            = speedData.IsRaiseHighCpuEvent;
     this.HighCpuPercent                 = speedData.HighCpuPercent;
     this.HighCpuSeconds                 = speedData.HighCpuSeconds;
     this.GpuDriver                    = speedData.GpuDriver;
     this.GpuType                      = speedData.GpuType;
     this.OSName                       = speedData.OSName;
     this.OSVirtualMemoryMb            = speedData.OSVirtualMemoryMb;
     this.GpuInfo                      = speedData.GpuInfo;
     this.Version                      = speedData.Version;
     this.IsMining                     = speedData.IsMining;
     this.BootOn                       = speedData.BootOn;
     this.MineStartedOn                = speedData.MineStartedOn;
     this.DiskSpace                    = speedData.DiskSpace;
     this.MainCoinCode                 = speedData.MainCoinCode;
     this.MainCoinTotalShare           = speedData.MainCoinTotalShare;
     this.MainCoinRejectShare          = speedData.MainCoinRejectShare;
     this.MainCoinSpeed                = speedData.MainCoinSpeed;
     this.MainCoinPool                 = speedData.MainCoinPool;
     this.MainCoinWallet               = speedData.MainCoinWallet;
     this.Kernel                       = speedData.Kernel;
     this.IsDualCoinEnabled            = speedData.IsDualCoinEnabled;
     this.DualCoinPool                 = speedData.DualCoinPool;
     this.DualCoinWallet               = speedData.DualCoinWallet;
     this.DualCoinCode                 = speedData.DualCoinCode;
     this.DualCoinTotalShare           = speedData.DualCoinTotalShare;
     this.DualCoinRejectShare          = speedData.DualCoinRejectShare;
     this.DualCoinSpeed                = speedData.DualCoinSpeed;
     this.KernelCommandLine            = speedData.KernelCommandLine;
     this.MainCoinSpeedOn              = speedData.MainCoinSpeedOn;
     this.DualCoinSpeedOn              = speedData.DualCoinSpeedOn;
     this.GpuTable                     = speedData.GpuTable;
     this.MainCoinPoolDelay            = speedData.MainCoinPoolDelay;
     this.DualCoinPoolDelay            = speedData.DualCoinPoolDelay;
     this.IsFoundOneGpuShare           = speedData.IsFoundOneGpuShare;
     this.IsRejectOneGpuShare          = speedData.IsRejectOneGpuShare;
     this.IsGotOneIncorrectGpuShare    = speedData.IsGotOneIncorrectGpuShare;
     this.MineWorkId                   = speedData.MineWorkId;
     this.MineWorkName                 = speedData.MineWorkName;
     this.KernelSelfRestartCount       = speedData.KernelSelfRestartCount - 1;// 需要减1
     this.LocalServerMessageTimestamp  = speedData.LocalServerMessageTimestamp;
     this.TotalPhysicalMemoryMb        = speedData.TotalPhysicalMemoryMb;
     this.MinerActiveOn                = DateTime.Now;// 现在时间
     this.IsAutoDisableWindowsFirewall = speedData.IsAutoDisableWindowsFirewall;
     this.IsDisableAntiSpyware         = speedData.IsDisableAntiSpyware;
     this.IsDisableUAC                 = speedData.IsDisableUAC;
     this.IsDisableWAU                 = speedData.IsDisableWAU;
 }
Exemple #6
0
 /// <summary>
 /// 上报算力时和拉取算力时。
 /// 因为只有MinerData具有的成员发生了变化时才需要持久化所以该非法输出isMinerDataChanged参数以表示MinerData的成员是否发生了变化。
 /// </summary>
 /// <param name="speedDto"></param>
 /// <param name="isMinerDataChanged"></param>
 public void Update(ISpeedData speedData, out bool isMinerDataChanged)
 {
     this.Update((ISpeedDto)speedData, out isMinerDataChanged);
     this.MinerActiveOn = speedData.SpeedOn;
 }