Apache OpenJPA - Metamodel generator (mmg) readme
Licensed under Apache License 2.0 - http://www.apache.org/licenses/LICENSE-2.0
--------------------------------------------------------------------------------

JPA 2.0 provides an utility to generate canonical metamodel for each persistent domain entity.
This brief note describes how to generate these canonical metamodel classes.

The canonical metamodel classes are generated during compilation of persistent domain entity classes.
The generation process depends on Annotation Processing facility available in JDK6. Naturally, this
process *only* works if the persistent domain entity classes are compiled with a JDK6 compiler.

Effectively, the process appears to be normal compilation process with a specialized Annotation Processor

  $ javac -classpath %CLASSPATH% <javac options> <mmg options> <*.java source files>
  
  
Compiler Classpath
------------------
   The compiler classpath must include OpenJPA libraries. 

mmg options
-----------
   These options specify the Annotation processor to be used as well as options for the processor. The only mandatory 
   option is 
          -processor org.apache.openjpa.persistence.meta.AnnotationProcessor6
          
The other options qualify the  Annotation processor itself and specified with -A<option>=<value> syntax

-Alog     log level. Permissible values are TRACE, INFO and WARN. 
          Default is INFO.
-Aout     the directory location of the generated canonical model source output files. 
          Default is the current directory.
-Asource  compatibility level of the generated canonical model source code. Permissible values are 5 and 6. 
          Default is 6.
-Aheader  flags if a header is created for the generated source code. Permissible values are true and false. 
          Default is true.
 
