Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 365321

Summary: Optionally replace reconciler with explicit QVTo transformation
Product: [Modeling] GMF-Tooling Reporter: Michael Golubev <borlander>
Component: Generation / TemplatesAssignee: Guillaume Hillairet <g.hillairet>
Status: NEW --- QA Contact:
Severity: normal    
Priority: P3 CC: borlander
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:
Bug Depends on: 365322, 365326    
Bug Blocks:    
Attachments:
Description Flags
Execution of user defined qvto transformation during Map2GenModel operation none

Description Michael Golubev CLA 2011-12-01 10:00:29 EST
Up to version 2.4, GMFT made some efforts to preserve the changes made by user in the resulting gmfgen files by te mean of the reconciler component. 

Experience shows that this approach has multiple downsides: 
- the user changes are hidden inside a big model that makes maintenance more difficult 
- the scope of the reconciler is not explicit, so from user point of view, it is never clear whether this particular change is going to be preserved after regeneration or not
- it is not extensible, and works only for the set of the features known at the GMFT build time. Actual reconciler can't handle the user tweaks in the 3rd party extensions to the gmfgen model

There are other approaches in handling user changes that need to be preserved among regenerations. In particular, the GMFTools project (http://code.google.com/p/gmftools/) uses the explicit transformation containing all user changes which is applied to the freshly created gmfgen model from bridge.

in 3.0 GMFT should consider using this scenario as an optional replacement for reconciler.
Comment 1 Guillaume Hillairet CLA 2011-12-20 06:35:32 EST
Created attachment 208602 [details]
Execution of user defined qvto transformation during Map2GenModel operation

This patch will execute a qvto transformation defined by the toolsmith, having the same name as the mapping model, and being in the same folder, right afer the execution of Map2Gen transformation. This allow the toolsmith to define in qvto specific changes to be made to GMFGenModel.