GraphMerger utility so far assumed that the merge(do1, do2) will happen on
DOs
which are contained in DataGraphRoot and have changeSummary associated with
them.

Looking at JIRA-1815, it shows a valid case when an user wants to merge 2
DOs (which do not have any knowledge of DataGraphRoot) and may be without
change
summary associated with them (like simply created using model/generated
factories)
i.e. user is supplying static DOs and information about its unique PK to
GraphMerger
but not associating any DAS config to GraphMerger.

DAS GraphMerge can help in merge() of such DOs by internally detecting if
these
are not contained in DataGraphRoot and performing necessary containment and
start
of changeSummary. and then user can use DAS to do applyChange() of the merge
result
to database.

If such arbitrary dataGraphs are conflicting with existing database table
data, the
operation will fail with necessary SQL Exceptions.

Suggestions?


Regards,
Amita

Reply via email to