Формулировка проблемы: при
создании нового пользователя через метод API
rest/api/filecabinet/user/save
у него по
умолчанию не создается личная папка "Мои документы". Она
инициализируется после первой авторизации пользователя в системе.
Необходима возможность создания личной папки пользователя в момент
его создания.
Решение.
Необходимо доработать метод API
rest/api/filecabinet/user/save
, добавив в него
новый входной параметр hasPrivateFolder
:
false
- повторяет текущее поведение метода;
true
- наоборот, автоматически инициализирует
личную папку пользователя в момент его создания от имени
администратора хранилища.
Параметр не является обязательным, значение по умолчанию -
false
. Выходные параметры и тип запроса не
меняются.
Если с помощью данного метода API выполняется изменение
существующего пользователя (т.е. среди входных параметров передан
userID
), у которого отсутствует личная папка, то
новый параметр hasPrivateFolder
должен сработать
также, как это описано для создания. При этом если личная папка у
изменяемого пользователя имеется, то параметр должен игнорироваться.
Альтернативный поток событий. Передано
некорректное значение параметра hasPrivateFolder
.
Параметр примет значение по умолчанию, т.е.
false
.
Также необходимо добавить описание нового параметра в Javadoc:
...
userID - идентификатор пользователя. Необходимо передавать если должно выполниться изменение существующего пользователя
hasPrivateFolder - создавать ли личную папку пользователя. Имеет смысл только при создании пользователя
...
Вариант использования.
Создать пользователя через
rest/api/filecabinet/user/save
.
Не авторизовываясь в системе под новосозданным пользователем,
проверить наличие личной папки через
rest/api/storage/list
- таковая имеется,
создана от имени администратора хранилища.