Migrate a file to another file.
We have a couple of options for loading the files for migration:
- Keep multiple instances of the model files in multiple plugins, and let EMF decide which model implementation to load. Once the model is loaded, we can use EMF functionality to traverse over the model and create a new version.
- Use ATL. But ATL also requires a metamodel for both the source and target models.
- Load the model file with XML and create a new XMI model manually. This is more error prone.
The third option is more accessible but more work in the long term, but this is how we are doing it for now.
We also have some options for doing multiple migrations in a row (say v1, v2, v3, v4):
- v1 -> v2, v2 -> v3, v3 -> v4
- v1 -> v4, v2 -> v4, v3 -> v4
The first option requires less development work but more processing time since they chain.
@param input
@param output
@param monitor
@return