EMF Compare and LazyLinkingResource proxy URLs [message #1821511] |
Thu, 13 February 2020 14:34  |
Eclipse User |
|
|
|
I'm working with an Xtext DSL and exploring the possibility of using the EMF Compare RCP UI for model-based Git history diffs to augment the standard text-based diffing.
One behavior I've noticed is that changes in non-containment references are not being detected by EMF Compare. For example, using this State Machine example, if I invert the state transitions to turn
state active
drawerOpened => waitingForLight
lightOn => waitingForDrawer
end
into
state active
drawerOpened => waitingForDrawer
lightOn => waitingForLight
end
Then EMF Compare doesn't detect this change.
I believe this is because of the way the proxy URLs used by LazyLinkingResource work - instead of referring to the target EObject they refer to their own position in the source for later decoding, and since that doesn't change they are the same as far as EMF Compare is concerned.
Is there a general way to handle this? I've have some success with a custom IEqualityHelper.
(Note in the example above the reference is within the same file, but in our case we do deal with multiple files)
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.29453 seconds