Поддержка Maker-Checker Envers - PullRequest
       1

Поддержка Maker-Checker Envers

0 голосов
/ 24 февраля 2011

Может ли кто-нибудь помочь мне, как решить эти варианты использования функциональности maker-checker с помощью envers.

1) Создатель создает запрос на создание объекта (например, отдела) - данные не должны вставляться втаблицы сущностей.Он должен быть записан в таблицах аудита

2) Средство проверки извлекает список объектов для авторизации - Данные следует запрашивать из таблицы аудита

3) Средство проверки просматривает ожидающий запрос - Показать исходную записьвместе с изменениями

4) Checker авторизует запрос - данные перемещаются / перезаписываются из таблицы аудита в таблицу enity.

5) Создатель запрашивает изменение объекта - таблицы объектов не будут изменены.Изменения фиксируются в таблицах аудита.Изменения будут перемещать таблицы сущностей только после авторизации.

Ожидается, что в решении будут учтены следующие ограничения

1) Master-Detail, т.е. Dept содержит сотрудников

2) Массовая авторизацияТо есть, когда в отделе, скажем, 10 000 сотрудников, процесс авторизации должен иметь разумную производительность.Окончательный вариант использования должен выполнить проверку данных + правила авторизации + перемещение данных из таблиц аудита в таблицы сущностей.

3) Все вышеприведенные варианты использования относятся к Master-Detail.

Мне нравится знатьЭксперты от envers Реально ли реализовать все вышеперечисленные варианты использования envers?Какие изменения понадобятся в Envers?

Заранее спасибо --Kiran.Kumar

1 Ответ

0 голосов
/ 24 февраля 2011

Мне бы хотелось узнать от экспертов envers, возможно ли реализовать все вышеперечисленные варианты использования envers?

Я не эксперт в отношении Энверса, но нет, почти ни один из случаев не выполним с Энверсом.Причина довольно проста: у вас слишком много конкретных вариантов использования, чтобы использовать универсальное решение.

В вашей позиции я бы указал интерфейс под названием «Verifiable» (или что-то подобное), который определяетДата утверждения "и" утверждающий ".Ваши бизнес-методы будут отвечать за поиск объектов, которые еще не утверждены, и их устранение.Просто отметьте, что может оказаться невозможным сначала сохранить объекты в одной таблице, а затем переместить объекты в другую.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...