I've tried to use ConvertorGenerator to generate basic nexus configuration upgrade code. Unfortunately, this did not work too well.
First, generated converter classes appear to assume that the "current" model version is generated into package both with and without version, i.e. the same v4 model classes expected to appear in o.c.m.test.maven.v4_0_0 and o.c.m.test.maven packages, which is not desired behaviour for nexus. As a side effect of this, there is a converter from one copy of the model to another.
Second, generated converter classes do not properly handle removal of attributes from newer model version.
And lastly, there is no way to disable generation of ConverterTool (and I could not make sense out of generated code).
Originally I tried to fix these problems in the existing generator but this proved to be impossible without changing existing clients of generated code (assuming there are any, of course) so I decided to create brand new generator. The new generator emphasizes upgrading model to the latest version (hence the "upgrade" name).
Let me know if this all makes sense.
PS: I am willing to support the new generator, if this makes any difference.