Дерево страниц
Skip to end of metadata
Go to start of metadata

CMJ-Server - это набор серверных компонент, разработанных на Java , и отвечающих за обработку поступающих от WEB-клиента запросов, запись в хранилища данных CM нужной информации и чтение из хранилищ данных СМ для передачи в WEB-клиент.

Статус

ГОТОВО

Комментарий


Навигация

Компоненты

Application Services Level

Уровень прикладных операций

  • Координация взаимодействий клиентов с бизнес-объектами и службами уровня предметной области.
  • Фоновые задачи (в асинхронном режиме): преобразование форматов файлов.
  • Обмен данными (в асинхронном режиме) между репозиториями контента и кэшем оперативных данны х.

Domain

Уровень бизнес-логики (предме тной области)

  • Персональные коллекции (структурированные списки) «ярлыков»: Папки, результаты поиска, персональные каталоги документов (ПКД), содержащие очереди уведомлений, задач, последних созданных, открытых, сохраненных документов.
  • Бизнес-объекты: документы (РКК), резолюции (КР) и поручения (КП), отчеты об исполнении (КИ), листы согласования/ознакомления, визы и т.д., а также записи справочников, вопросы и ответы по обсуждению.

Data Storage API (DSAPI)

Сервис хранения данных

  • ORM (JPA/Hibernate), JDBC
  • Оперативные данные: внешняя РСУБД

Content Repository API (CRAPI)

Интеграция с репозиториями контента - обобщенный API репозитория контента

  • единообразно предоставляющий доступ в разных репозиториях к бизнес-объектам и службам СЭД: поиск; отчеты; Коллекции (Папки, ПКД,...); Управление доступом.

Интерфейсная логика

Интерфейсная логика приложения базируется на технологиях Spring MVC и Spring REST.

Интерфейсная логика содержит три базовых типа компонентов:

  • ObjectController – маршрутизирует клиентские запросы на уровень прикладной логики. Представляет собой Spring MVC контроллер, который принимает REST запросы. Конфигурация контроллера производится только средствами Spring .
  • ObjectReference – отвечает за доступные операции, которые можно выполнить над объектом. Возможные значения – GET PUT POST DELETE . Также описывает путь объекта для доступа из вне.
  • DaoProxy – конвертирует ошибки вызова слоя данных компоненты SpecificDao и вызывает его.  Компонент является опциональным.

Прикладная логика

Модуль AF

Модуль является базовым для сервера CMJ и решает следующие задачи:

  • Описывает прикладную модель доменной области
  • Содержит базовые прикладные механизмы системы
  • Взаимодействует с подсистемой хранения (Sochi-Server ActiveFrame 5)


Компонент "Базовый"

Компонент содержит базовые компоненты системы:

  • Интерфейсная модель базовых объектов системы – Объект и Документ (AFDocument AFObject);
  • Базовый интерфейс AFApplication, который определяет базовый блок прикладной логики. В интерфейсе определен один метод - получить объект по UNID;
  • Интерфейсная модель произвольного пользователя системы (AFUserProfile);
  • Сессия пользователя (AFSession);
  • Коннектор к серверу хранения (AFCMDomino);
  • Сообщений системы (AFMessages);
  • Подсистема журналирования (AFLogging);
  • Сеть серверов (AFNet);
  • Уведомления пользователям в терминах Домино (AFNotice);
  • Утилита сохранения документов:
  • Формирование журнала изменений;
  • Обработка полей доступа, формирование итоговых AFReaders, AFAuthors;
  • Обновление других документов, которые имеют зависимость от текущего объекта;
  • Контроль изменений в списке дел (ФД), куда отнесен документ, с целью избежать лишних вызовов агента, обновляющего ФД.

Компонент "Согласование/Ознакомление"

Компонент содержит в себе Приложение (application) "Согласование" (approving) или "Ознакомление" (review).

Компонент предназначен для работы со следующими бизнес-объектами:

  • Прикладной Документ, по которому запускается процесс( ARSourceDocument )
  • Лист (Согласования / Ознакомления) (ARList) Ответ участника процесса (ARReply)
  • Список для выбора участников процесса ( ARParticipantsPool )
  • Шаблон Листа Согласования (ARTemplateApproving)

Компонент "Коллекции"

Компонент предназначен для определения коллекций объектов и работы с ними.

Компонент определяет интерфейс приложения «CLApplication», который может выполнять следующие задачи:

  • Возвращает объект «Построитель Коллекций»;
  • Возвращает «Тип Элемента» по заданному имени.

Построитель коллекции решает следующие задачи:

  • Навигация по коллекции – вперед, назад, шаг внутрь;
  • Поиск по коллекции.

Компонент определяет следующие бизнес-объекты:

  • CLType – тип элемента коллекции;
  • CLType . Complex – комплексный тип элемента коллекции;
  • CLNodeInfo – представляет информацию о некотором узле коллекции.

Компонент "Дело документов"

Компонент предназначен для определения приложения Дело документов. Содержит интерфейсы приложения FDApplication, а также базовые объекты.

Основные решаемые задачи:

  • Вернуть коллекцию справочников «Дело документов»
  • Вернуть коллекцию папок в выбранном справочнике (с возможной фильтрацией по подразделению и месту регистрации)
  • Вернуть список папок из всех документов
  • Список РКК в папке
  • Редактирование дела документов

Компонент "Последние изменения"

Компонент предназначен для работы с изменениями документа.

Основные решаемые задачи:

  • Получение информации по документу из хранилища – время поиска и время модификации, и дальнейшее сохранение в РСУБД.

Компонент "Связи документов"

Компонент предназначен для управления и просмотра связей документов.

Компонент "Поиск документов"

Компонент предназначен для поиска документов.

Компонент "Структура  организации"

Компонент предназначен для описания структуры организации.

Модуль "Отчеты"

Модуль предназначен для запуска агентов для создания отчётов по документам CompanyMedia.

Модуль "Коллекции"

Модуль предназначен для работы с персонализированными коллекциями документов.

Модуль описывает коллекции, описывает базовые элементы коллекции, сервисы создания (builders) коллекций.  Базовое приложение возвращает сервис создания коллекции.

Элементами коллекции могут быть следующие бизнес-объекты:

  • Документ;
  • Резолюция\Поручение;
  • Исполнение;
  • Согласование;
  • Обсуждение;
  • т.д.

Коллекции должны позволять над собой следующие операции:

  • Предыдущая страница коллекции;
  •  Следующая страница коллекции;
  • Получить страницу-подкатегорию (осуществляется перемещение "внутрь" категории);
  • Поиск по коллекции;
  • Получить информацию об узле коллекции (модуль, комплект, имя запроса, путь до элемента).

Модуль "Обсуждение"

Модуль предназначен для решения следующих задач:

  • Получение ссылки на дискуссию
  • Получение получение тела дискуссии

Данный модуль используется при построении коллекций.

Интеграционная логика

Основная задача интеграционной логики приложения базируется на технологиях Spring MVC и Spring REST

Модуль "DAO Документы"

Модуль сохраняет все бизнес объекты с помощью JPA.

Интерфейс Mapped представляет собой любой хранимый в ORM доменный объект.


Модуль "DAO Согласование/Ознакомление"

Модуль реализует два приложения: Согласование и ознакомление.

Модуль предназначен для работы со следующими бизнес-объектами:

  • Прикладной Документ, по которому запускается процесс (ARSourceDocument)
  • Лист (Согласования / Ознакомления) (ARList)
  • Ответ участника процесса (ARReply)
  • Список для выбора участников процесса (ARParticipantsPool)
  • Шаблон Листа Согласования (ARTemplateApproving)

Модуль "Адаптер JPA"

Модуль предоставляет базовые методы по сохранению объектов с помощью JPA.

Модуль определяет базовые сервисы, которые работают с технологией хранения объектов JPA. AFStorage является базовым классом содержащим JPA EntityManager. Он также определяет методы хранения и поиска объектов.

AFQueryHelper использует AFStorage для поиска объектов

AFProxyColletion и наследники определяют proxy для java коллекций.

Модуль "Адаптер хранилища"

Модуль описывает интерфейсную модель запуска приложений CompanyMedia. Используется для экспортирования объектов CompanyMedia в другие Enterprise Content Management Systems.

  • IMCEngine определяет метод запуска приложений ICMApp в контексте IAppContext и конфигурации ICMConfig .
  • IEqualizer – сравнивание объектов
  • IECMApp – интерфейса экспортируемого приложения для внешней системы.

Модуль "Quartz"

Механизм запуска фоновых задач по расписанию. Основан на библиотеке Quartz. Модуль определяет spring компонент для запуска работ по расписанию.

Логическая модель подсистем хранения справочников и персональных коллекций

Логическая модель подсистемы хранения состоит из трёх базовых блоков: