Получение измененных свойств путем ревизии


Я использую Hibernate Envers для аудита моих сущностей и свойств (org.hibernate.envers.global_with_modified_flag=true). Это, кажется, работает,но теперь я хотел бы получить все свойства конкретной сущности, которые изменились при данной ревизии, по сравнению с предыдущей. В качестве бонуса было бы неплохо получить набор изменений от одной редакции к другой. Пока я получаю только модифицированные сущности:

List<Object> modifiedClassesAtRevision = getAuditReader().getCrossTypeRevisionChangesReader().findEntities(revision, RevisionType.MOD)
Object modifiedObject = modifiedClassesAtRevision.get(0);

Теперь, поскольку я не хочу создавать методы сравнения для всех сущностей в Java, есть ли способ получить измененные свойства об этой ревизии? Что-то вроде

List<String> modifiedProperties = getAuditReader().getModifiedProperties(modifiedObject, revision);
Было бы неплохо иметь - но, возможно, я просто слишком глуп, чтобы найти такую особенность.
1 5

1 ответ:

В настоящее время возможен только запрос сущностей, в которых было изменено свойство, см. http://docs.jboss.org/hibernate/core/4.1/devguide/en-US/html/ch15.html#envers-envers-tracking-properties-changes-queries.

Получение дескриптора (набора изменений), свойства которого изменены, пока невозможно.