Skip navigation

Monthly Archives: février 2009

Pour faciliter le développement des modèles ecore j’ai réalisé un petit wizard Epsilon qui permet de définir les propriétés des EPackages d’un modèle ecore, d’un simple clique.

Voici le code :

wizard setNestedPackagesInfos {

guard : self.isTypeOf(EPackage)

title : ‘Set properties of nested packages’

do{
for(package in EPackage.allInstances() ){
package.nsPrefix := package.name.toLowerCase();
package.nsUri := package.generateNsUri();
}
}
}

operation EPackage generateNsUri () : String {
var ret : String;
if(self.eSuperPackage.isDefined())
{
ret := self.eSuperPackage.generateNsUri() + ‘/’ + self.name;
}
else
{
ret := self.nsUri;
}
return ret;
}

C’est aussi simple ! Ne reste plus qu’à en faire un plugin pourquoi pas ? Mais j’arrive pas à exporter 😦