Jump to: navigation, search

Difference between revisions of "EMF Compare/API LayerDifferences"

Line 34: Line 34:
 
</pre>
 
</pre>
  
[[Category:Modeling]] [[Category:EMF Compare OUTDATED]]
+
[[Category:EMF Compare OUTDATED]]

Revision as of 08:34, 5 March 2014

THIS PAGE IS OUTDATED AND IS NOT SCHEDULED TO BE UPDATED

The API enables to compute differences between GMF diagrams and to layer these differences (through decorators) on out diagram resources. It is the service class: GMFCompareServices which contains this API:

  • ComparedResourceSets layerDifferences(ComparedResourceSets input, final Map<String, Object> options)
    

The CompareResourceSets class is a structure to contain the set of the resources to compare (left, right and ancestor).

This method returns this structure with decorated resources, corresponding to the computed differences.

The parameter "options" is the options for the match processing.

Here is an exemple to call this API:

ComparedResourceSets input = new ComparedResourceSets();
input.setLeft(modifiedResourceSet.getResources());
input.setRight(originalResourceSet.getResources());
		
ComparedResourceSets result = GMFCompareService.layerDifferences(input, Collections.EMPTY_MAP);

There is an other API to decorate the compared diagrams from a result of comparison (DiffResourceSet):

  • ComparedResourceSets layerDifferences(final DiffResourceSet diffModel)
    

Here is an exemple to call this API:

final MatchResourceSet matchModel = MatchService.doResourceSetMatch(modifiedResourceSet, originalResourceSet, Collections.<String, Object> emptyMap());
final DiffResourceSet diffModel = DiffService.doDiff(matchModel, false);
		
ComparedResourceSets result = GMFCompareService.layerDifferences(diffModel);