Community
Participate
Working Groups
Two (or more) EPackages can have the same name. For instance in Sirius there are a number of EPackages which are named "description" but have a different nsURI. ex : description http://www.eclipse.org/sirius/diagram/sequence/description/2.0.0 description http://www.eclipse.org/sirius/table/description/1.1.0 description http://www.eclipse.org/sirius/diagram/description/1.1.0 These EPackages are being registered in the EPackageProvider but in the end only the last one is kept by AQL, leading to errors like "type description::SomeThing" not found whereas it has been correctly registered. Furthermore, the test : if (!("ecore".equals(ePackage.getName()) && !EcorePackage.eNS_URI.equals(ePackage.getNsURI()))) { in EPackageProvider.registerPackage(EPackage) might not be needed anymore if AQL handles this case gracefully as it came from the fact that an EPackage contributed by OCL was named "ecore" and would make type literals based services fail.
We should have way to warn the user when he registers two different EClasses with the same EPackage and EClass names. A EPackageRegistrationResult similar to ServiceRegistrationResult ?
New Gerrit change created: https://git.eclipse.org/r/63839
New Gerrit change created: https://git.eclipse.org/r/63845
Gerrit change https://git.eclipse.org/r/63839 was merged to [master]. Commit: http://git.eclipse.org/c/acceleo/org.eclipse.acceleo.git/commit/?id=234e40a5543813fa01a394be1a97ac1ca4d0dc89
Fixed on master
Gerrit change https://git.eclipse.org/r/63845 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=df40a4e3cb3c1cbd5835ef2d1494da9534db4424
The correction made in AQL for this bugzilla has been validated on the Sirius use case through Bug 483577 homologation on Sirius 4.0.0.201605180923 (4.0.0 RC1) and AQL 5.0.0.201605040614.