Можно ли связать разные коммиты javers и получить их вместе, используя глубокие тени или каким-либо другим способом? - PullRequest
0 голосов
/ 27 июня 2019

Я ищу функцию в Javers при создании снимка, чтобы связать его с другими ранее созданными снимками.

Я посмотрел на область фиксации глубины для теней, но он выбирает только снимки, которые имеют одинаковый идентификатор фиксации.

Я хочу что-то вроде этого:

Сотрудник сущности связан один с одним адресом сущности. Я сохраняю адрес, в котором хранится снимок адреса A1 с коммитом c1. Теперь я сохраняю сотрудника, ссылающегося на тот адрес, где хранится снимок сотрудника E1 с коммитом c2.

Я не могу получить эти два снимка A1 и E1 вместе, поскольку они находятся в разных коммитах (c1 и c2).

Можно ли получить эту информацию с текущими Javers или нам нужно добавить функцию для этого, или это избыточное убийство?

Функция может быть такой:

Если я запрашиваю тени Сотрудников (скажем, byInstanceId) с новой областью (может быть, как область с глубокими связями), это должно дать мне все тени Сотрудника, использующие commit-deep, плюс все связанные тени, в этом случай, оба снимка E1 и A1

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

1 Ответ

0 голосов
/ 01 июля 2019

Вы можете использовать Deep+ Shadow Scope.

см. https://javers.org/documentation/jql-examples/#query-for-shadows

Существует четыре области действия.Чем шире область действия, тем больше теней объектов загружается в результирующий граф (и тем больше запросов к базе данных выполняется).Области определены в перечислении ShadowScope.

  • Shallow - область действия по умолчанию - тени создаются только из снимков, выбранных непосредственно в основном JQL-запросе.
  • дочерний объект-объект - JaVersзагружает все дочерние объекты значения, принадлежащие выбранным объектам.Начиная с версии 3.7.5, эта область неявно включена для всех запросов Shadow и не может быть отключена.
  • Commit-deep - тени создаются из всех снимков, сохраненных в коммитах, которых коснулся основной запрос.
  • Deep + - JaVers пытается восстановить полные графы объектов со всеми (возможно) всеми загруженными объектами.
...