예제 #1
0
        public static bool NeedsUpdate(this DiskLocal oldDisk, DiskLocal newDisk)
        {
            var isDifferent = !(oldDisk.Name == newDisk.Name &&
                                oldDisk.Letter == newDisk.Letter &&
                                Math.Abs(oldDisk.FreeSpaceInGigaBytes - newDisk.FreeSpaceInGigaBytes) < 1024 * 1024 * 50 && // Tolerance up to 50 MB.
                                Math.Abs(oldDisk.TotalSpaceInGigaBytes - newDisk.TotalSpaceInGigaBytes) < 1024 * 1024 * 50);

            return(isDifferent);
        }
예제 #2
0
 public static DiskResource ToResourceModel(this DiskLocal disk, int computerId)
 {
     return(new DiskResource()
     {
         ComputerId = computerId,
         Name = disk.Name,
         TotalSpaceInGigaBytes = disk.TotalSpaceInGigaBytes,
         Letter = disk.Letter,
         FreeSpaceInGigaBytes = disk.FreeSpaceInGigaBytes,
         DiskId = disk.DiskId
     });
 }
예제 #3
0
        private static void GenerateDisks(ComputerLocal computer)
        {
            var disksAmount = Settings.MaxAmountOfDisks.Random(1);
            var diskLetters = GenerateUniqueLetters(disksAmount).ToArray();

            for (var i = 0; i < disksAmount; i++)
            {
                var totalSpace = 2048.0.Random(10.0);
                var disk       = new DiskLocal()
                {
                    TotalSpaceInGigaBytes = totalSpace,
                    FreeSpaceInGigaBytes  = totalSpace.Random(0.5),
                    Letter = $"{char.ToUpper(diskLetters.ElementAt(i))}:\\",
                    Name   = Samples.DiskNames.Random()
                };
                computer.Disks.Add(disk);
            }
        }