Bug 395900 - CoreServices API Injector Bug
Summary: CoreServices API Injector Bug
Status: UNCONFIRMED
Alias: None
Product: MMT.ATL
Classification: Modeling
Component: emfvm (show other bugs)
Version: unspecified   Edit
Hardware: PC All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: mmt-atl.toolkit-inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-12-06 04:48 EST by Ronan Bar CLA
Modified: 2013-10-04 08:12 EDT (History)
0 users

See Also:


Attachments
The patch chanegs the assumption of what type the metamodel is. (769 bytes, patch)
2012-12-06 04:48 EST, Ronan Bar CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Ronan Bar CLA 2012-12-06 04:48:58 EST
Created attachment 224355 [details]
The patch chanegs the assumption of what type the metamodel is.

There is a really hard to find bug in the CoreServices LauncherService.java getModel method. There is a bad assumption that the IN model and its associated MetaModel will have the same injector. This is not the case when doing ATL HOTs.

The ATL MM should use an EMF injector while the ATL model should use an ATL injector. Today in the code they always use the same one.

I have supplied a patch to replace the line injector.inject(referenceModel, referenceModelPath); with CoreService.getInjector("EMF").inject(referenceModel, referenceModelPath);

I tested this on Windows/Linux using Eclipse 3.6.2 and ATL 3.3.1.v201209061455.

Can you think of any cases where the MM won't be EMF based? Is this new assumption okay?

Thanks,
Ronan
Comment 1 Ronan Bar CLA 2013-10-04 08:12:52 EDT
Is there no interest in fixing this issue?