AndroMDA processes the project andromda.xml from top to bottom: loads the model and all dependent models, then processes each namespace (corresponding to a cartridge) in order. See .
In each cartridge, it processes META-INFandromdacartridge.xml from top to bottom: For each referenced template, it determines which metafacades are applicable by matching up model element types/stereotypes/metafacades.xml mappings with the loaded model elements, filling in the value of the specified variable which is used in the template. The variable corresponds the metafacade UML element, whose attributes/methods can be referenced in velocity through the metafacade APIs . If you need to do complex processing in Java code or need to manipulate the model elements specifically for your cartridge, you'll need to add a cartridge-specific metafacade layer on top of the UML metafacade layer, with mappings etc to the underlying model elements. See .
Cartridges can be used to generate anything, including .sql, C#, or C++: you just create the templates with the appropriate placeholders with variables filled in from the model elements.
--
Thanks
Bob Fields
bobfieldsfb <at> hotmail <dot> com
_________________________________________________________
Reply to the post : http://galaxy.andromda.org/forum/viewtopic.php?p=26740#26740
Posting to http://forum.andromda.org/ is preferred over posting to the mailing list!
|