Exemplo n.º 1
0
        /// <summary>
        /// Выполняет запрос на восстановление файловой системы
        /// </summary>
        /// <returns></returns>
        public bool RestoreFileSystem(out StateApplication state)
        {
            var result = MessageBoxHellpers.Questions("Восстанвоить файловую систему ?");

            switch (result)
            {
            case System.Windows.MessageBoxResult.None:
                break;

            case System.Windows.MessageBoxResult.OK:
                break;

            case System.Windows.MessageBoxResult.Cancel:
                JournalFileSystemController.AddInfo("Восстановление файловой системы отменено");
                break;

            case System.Windows.MessageBoxResult.Yes:
                this.ClearFileSystem();
                this.backup.Restore(this.filesList);
                foreach (var file in this.filesList)
                {
                    this.Save(file);
                }
                JournalFileSystemController.AddInfo("Сессия файловой системы успешно восстановлена");
                break;

            case System.Windows.MessageBoxResult.No:
                JournalFileSystemController.AddInfo("Предыдущая версия файловой системы очищена");
                this.ClearFileSystem();
                this.backup.ClearFileSystem();
                break;

            default:
                break;
            }

            if (MessageBoxHellpers.Questions("Восстанвоить предыдущую сессию приложения ?") == System.Windows.MessageBoxResult.Yes)
            {
                if (this.backup.RestoreState(out state))
                {
                    JournalFileSystemController.AddInfo("Сессию приложения успешно установлена");
                    return(true);
                }
                else
                {
                    JournalFileSystemController.AddInfo("Сессию приложения не удалось восстанвоить");
                    return(false);
                }
            }
            else
            {
                JournalFileSystemController.AddInfo("Предыдущая сессия приложения отменена");
                state = null;
                return(false);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Удаляет файл из файловой системы.
        /// </summary>
        /// <param name="fileName">Имя файла.</param>
        public void Delete(FileModel file)
        {
            JournalFileSystemController.AddInfo($"Начало удаление файла {file.ToString()}");
            Thread.Sleep(FileSystemController.timeOperation);
            var path = Path.Combine(this.path, file.ToString());

            if (IsFileExist(path))
            {
                File.Delete(path);
                JournalFileSystemController.AddInfo($"Конец операции удаление файла {file.ToString()}");
            }
            else
            {
                MessageBoxHellpers.Error("Ошибка", $"Файл с именем: {file.ToString()} не существует в дириктории {path}");
                JournalFileSystemController.AddInfo($"Ошибка при удалении файла {file.ToString()}");
            }
        }
Exemplo n.º 3
0
 /// <summary>
 /// Сохраняет текущую сессию в backup
 /// </summary>
 public void SaveSession()
 {
     this.backup.ClearFileSystem();
     this.backup.SaveAll(this.filesList);
     JournalFileSystemController.AddInfo("Сессия сохранена");
 }