Как выполнить пользовательское действие в Alfresco перед загрузкой файла? - PullRequest
0 голосов
/ 22 сентября 2011

Я хочу сохранить в хранилище неизмененный файл, но изменить его при загрузке из-за роли пользователя.

Для этого я просто создал свое собственное действие, которое изменяет содержимое файла, но обнаружил, что Alfresco не предоставляет подходящего правила для выполнения при загрузке файла.

Мое действие должно выполняться при загрузке с использованием API (ссылка) и с использованием CIFS или WebDAV (копирование из папки), поэтому для выполнения действия мне нужно использовать механизм правил.

Как я могу это понять?

1 Ответ

2 голосов
/ 22 сентября 2011

Хотя я не могу придумать решение, которое сохраняет поток данных, который вы описываете, особенно с учетом интерфейсов файлового сервера, я бы посоветовал вам не преобразовывать контент по запросу пользователя, так как для этого потребуются онлайн (блокирующие) вычисления при каждый пользователь загружает. Я также предполагаю, что результаты таких преобразований являются «статическими» для данной роли.

Я бы решил ваш вариант использования следующим образом:

  • создание действия , которое генерирует все необходимые версии документа

  • такое действие также должно соответственно устанавливать разрешения, так что ReadPermission предоставляется только целевой роли

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

  • (опционально) создает и настраивает аналогичную пару действие / правило для очистки всех передач при удалении контента

Таким образом, какой бы пользователь или роль ни обращался к данной папке, будет представлен только контент в той форме, которую он ожидает.

...