Beispiel #1
0
        /// <summary>
        /// Восстановить файл
        /// </summary>
        /// <param name="id"></param>
        private static void Restore(int id)
        {
            var virusInfo = FoundVirusesManager.getInfo(id);

            ScanTasks.RestoredFile = virusInfo.file;


            KernelConnectors.Logger.WriteLine("[API.Restore] Восстановление файла " + virusInfo.file, LoggerLib.LogLevel.OK);
            KernelConnectors.Logger.WriteLine("[API.Restore]   Удаление информации о вирусе из менеджера", LoggerLib.LogLevel.OK);
            FoundVirusesManager.Delete(id);

            KernelConnectors.Logger.WriteLine("[API.Restore]   Вызов восстановления файла у менеджера карантина", LoggerLib.LogLevel.OK);
            Quarantine.Quarantine.Restore(virusInfo.fileInQuarantine, virusInfo.file);
        }
Beispiel #2
0
        /// <summary>
        /// Удалить файл, где бы он не находился(в карантине/на диске)
        /// </summary>
        /// <param name="id"></param>
        private static void Delete(int id)
        {
            var virusInfo = FoundVirusesManager.getInfo(id);

            if (virusInfo.inQuarantine)
            {
                KernelConnectors.Logger.WriteLine($"[API] Удаление файла из карантина {virusInfo.fileInQuarantine}", LoggerLib.LogLevel.OK);
                Quarantine.Quarantine.DeleteFromStorage(id);
            }
            else
            {
                KernelConnectors.Logger.WriteLine($"[API] Удаление файла на жестком диске {virusInfo.file}", LoggerLib.LogLevel.OK);
                File.Delete(virusInfo.file);
            }

            KernelConnectors.Logger.WriteLine($"[API] Удаление из менеджера вирусов", LoggerLib.LogLevel.OK);

            FoundVirusesManager.Delete(id);
        }