5.9. Code Generation Subsystem
Purpose: Point where the different languages register that they know
how to do code generation and common functions for all languages.
The Code Generation is located in
org.argouml.language.
The Code Generation subsystem is a Control subsystem. See Section 4.5, “View and Control subsystems”.
The code to generate various languages
that is supplied with ArgoUML
is found in sub-packages of
org.argouml.language.
In the case of languages
other than Java, these classes will come from independent projects and
be packaged separately even though they share this package name space.
![[Warning]](images/warning.png) | Warning |
|---|
| NOTE: There is a potential conflict here if two separate
language implementations use this name space in an uncoordinated fashion
(e.g. two Ruby implementations using org.argouml.language.ruby).
|
All source language code generators must implement the
org.argouml.uml.generator.CodeGenerator
interface.
All modules must implement the
org.argouml.moduleloader.ModuleInterface
interface.
At initialization time, each language registers themselves using
org.argouml.uml.generator.GeneratorManager.