|
| Re: EMF Compare get Object Attributes [message #1063429 is a reply to message #1062893] |
Thu, 13 June 2013 03:25   |
Laurent Goubet Messages: 1583 Registered: July 2009 |
Senior Member |
|
|
Hi,
I have no idea what you're trying to achieve, but I guess what you want is to retrieve info about the target of a diff. With EMF Compare 1, you will have to cast to the proper diff type (ModelElementChangeRightTarget, ModelElementChangeLeftTarget, ...), use the getter for the target element (getRightElement, getLeftElement, ...) and navigate from that element to the info you seek : getClass(), getName(), etc.
You should switch to EMF Compare 2, since exploiting the comparison result is much easier now :
IComparisonScope scope = EMFCompare.createDefaultScope(resourceSet1, resourceSet2);
Comparison comparison = EMFCompare.builder().build().compare(scope);
List<Diff> differences = comparison.getDifferences();
for (Diff diff : differences) {
if (diff instanceof ReferenceChange) {
EObject changed = ((ReferenceChange)diff).getValue();
System.out.println("Changed EObject '" + changed.getName() + "' of type : " + changed.getClass());
}
}
Laurent Goubet
Obeo
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.02062 seconds