Andromda supports multiple models but the method getAllUseCases of the FrontEndUseCase class returns only use cases of the current model
The only way I see to fix this issue is to capture the list of models to be processed through the repository facade, and populate a static list in a class in a metafacade (i.e. UMLUtilities) such that the list can be referenced by other classes at the metafacade layer during further processing. The current API uses EMF .getModel() which simply returns the model containing the current element being processed, but there is no way I can find to get all of the referenced models since theoretically there may be no relationship between the contents of the models.
We would have to get the list before processing all of the models, since the list would have to be available during the processing. Also, we would probably want to exclude the modules such as UML Standard Profile and other dependent profiles, for performance reasons, so we don't loop through all of those contents looking for UseCases or other user content.
A year ago, multiple model processing was not even supported for UML2 models
The problem is that calls to UmlUtilities.getAllMetaObjectsInstanceOf in uml22 only uses the current model, rather than searching through all loaded models. References and validations across models are not loaded properly, for use cases, associationEnds, and classes. The underlying problem is how the UML14 migration was implemented: UML14 getModel() returned a list containing all loaded models, UML2 getModel only returns the current model being processed. I've seen a similar issue when validating Entity type relationships across models. Hopefully I can fix this pretty quickly, it's a similar fix to the one I implemented to load uml22 multiple models from the andromda configuration.
Looks fine to me. Thank you!
The other user responded that his issue was also fixed, so I'm closing this one.