Требования к манипуляциями с файлами и каталогами

Общая формулировка требования: клиент должен предоставлять возможность совершения следующих действий с файлами и папками:

  1. копирование

  2. удаление

  3. перемещение

  4. изменение имени

  5. создание ярлыков

  6. создание нового каталога

Манипуляции с файлами и каталогами с помощью клиента Synergy может осуществляться следующими способами:

Копирование с клиентского компьютера пользователя на сервер Synergy

Может осуществляться с помощью выбора файлов и/или каталогов в системном менеджере файлов (например, проводник Windows) и перетаскивании их в основную рабочую область клиента.

Кроме этого, копирование может быть осуществлено с помощью системного буфера обмена — выбранные файлы и/или каталоги помещаются в буфер системной командой «копировать» и копируются в место назначения на сервере Synergy с помощью клиента и операции «вставить».

Возможные исключительные ситуации:

  • Превышен лимит квоты на каталог места назначения.

  • В месте назначения уже присутствуют файлы или папки с теми же именами, которые присутствуют в копируемых файлах и/или каталогах. Действия: вывести стандартный диалог (см. ниже) с возможностью пропуска, замены либо переименования проблемных элементов.

  • Обрыв сетевого соединения. Действия: вывести диалог об ошибке с сообщением «Потеря связи с сервером».

  • Общая ошибка ввода/вывода — в случае, если исключительная ситуация не попадает ни под одно из вышеприведённых описаний.

Действие «копирование» в вышеприведённом случае является стандартным действием для Drag-and-Drop

Копирование с сервера Synergy на клиентский компьютер

Осуществляется с помощью функции «Сохранить в…», где имеется возможность выбрать каталог назначения копирования на клиентском компьютере.

Кроме этого, для ОС Windows копирование может быть осуществлено с помощью системного буфера обмена — выбранные файлы и/или каталоги помещаются в буфер системной командой «копировать» и копируются в место назначения на на клиентский компьютер операцией «вставить».

Возможные исключительные ситуации:

  • Недостаточно свободного дискового пространства в месте назначения копирования. Действия: необходимо вывести сообщение об ошибке.

  • Отсутствие прав доступа на каталог, являющийся местом назначения копирования.

  • Обрыв сетевого соединения. Действия: вывести диалог об ошибке с сообщением «Потеря связи с сервером».

  • В месте назначения уже присутствуют файлы или папки с теми же именами, которые присутствуют в копируемых файлах и/или каталогах. Действия: вывести стандартный диалог (см. ниже) с возможностью пропуска, замены либо переименования проблемных элементов.

  • Общая ошибка ввода/вывода — в случае, если исключительная ситуация не попадает ни под одно из вышеприведённых описаний.

Копирование только в рамках сервера Synergy

Копирование может осуществляться только с помощью диалога — выбираются нужные каталоги/файлы, осуществляется операция «Копировать», далее выбирается каталог назначения и операцией «Вставить» происходит копирование.

Возможные исключительные ситуации:

  • Отсутствие прав доступа на каталог, являющийся местом назначения копирования.

  • Обрыв сетевого соединения. Действия: вывести диалог об ошибке с сообщением «Потеря связи с сервером».

  • В месте назначения уже присутствуют файлы или папки с теми же именами, которые присутствуют в копируемых файлах и/или каталогах. Действия: вывести стандартный диалог (см. ниже) с возможностью пропуска, замены либо переименования проблемных элементов.

  • Общая ошибка ввода/вывода — в случае, если исключительная ситуация не попадает ни под одно из вышеприведённых описаний.

Удаление файлов и каталогов

Удаление файлов и каталогов может производиться только в хранилище Arta Synergy. При этом должно вызываться диалоговое окно подтверждения удаления.

Возможные исключительные ситуации:

  • Отсутствие прав доступа на каталог, откуда производится удаление.

  • Обрыв сетевого соединения. Действия: вывести диалог об ошибке с сообщением «Потеря связи с сервером».

  • Общая ошибка ввода/вывода — в случае, если исключительная ситуация не попадает ни под одно из вышеприведённых описаний.

Перемещение файлов/каталогов

Перемещение файлов и каталогов должно осуществляться по следующей схеме:

  1. Копирование файлов в место назначения

  2. Удаление исходных файлов

Возможно перемещение файлов/каталогов между несколькими одновременно открытыми окнами приложения при помощи операции Drag-and-Drop.

Исключительные ситуации перечислены в описании каждого атомарного действия.

Переименование файлов/каталогов

Создание новых каталогов может производиться только в хранилище Arta Synergy.

Возможные исключительные ситуации:

  • Не введено название файла/папки, либо введены одни пробелы, либо отсутствует расширение у файла.

  • В месте назначения уже присутствуют файлы или папки с теми же именами, которые присутствуют в копируемых файлах и/или каталогах. Действия: вывести информацию о невозможности выполнения действия с указанием причины.

  • Отсутствие прав доступа переименования на каталог.

  • Обрыв сетевого соединения. Действия: вывести диалог об ошибке с сообщением «Потеря связи с сервером».

  • Общая ошибка ввода/вывода — в случае, если исключительная ситуация не попадает ни под одно из вышеприведённых описаний.

Создание ярлыков

Для клиента на ОС Windows в контекстное меню файла и папки, кроме прочего, добавляется пункт «Создать ярлык», по нажатию которого на рабочий стол ОС создастся ярлык с иконкой клиента и названием файла/папки. По нажатию на ярлык открывается новое окно клиента. Если же ярлык ссылается на несуществующий в текущем Хранилище объект, выдается ошибка (ярлык при этом не удаляется).

Создание нового каталога

Создание новых каталогов может производиться только в хранилище Arta Synergy.

Возможные исключительные ситуации:

  • Не введено название папки, либо ввелены одни пробелы.

  • Отсутствие прав доступа на каталог, являющийся родительским каталогом.

  • Обрыв сетевого соединения. Действия: вывести диалог об ошибке с сообщением «Потеря связи с сервером».

  • Общая ошибка ввода/вывода — в случае, если исключительная ситуация не попадает ни под одно из вышеприведённых описаний.