Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIgor Fedorenko2011-09-27 12:57:18 -0400
committerIgor Fedorenko2011-09-27 12:57:18 -0400
commitb6f22c37381e8533508ba7732d8e0bb7d05a1f47 (patch)
tree20b55ace9674a610b9c0e6c4274ec4344b752bb9
parent748499b3616ad58fba9954a3d9dd3f13cbee427b (diff)
downloadm2e-core-b6f22c37381e8533508ba7732d8e0bb7d05a1f47.tar.gz
m2e-core-b6f22c37381e8533508ba7732d8e0bb7d05a1f47.tar.xz
m2e-core-b6f22c37381e8533508ba7732d8e0bb7d05a1f47.zip
intermediate checkincode-generation-support
Signed-off-by: Igor Fedorenko <igor@ifedorenko.com>
-rw-r--r--codegeneration.txt99
-rw-r--r--org.eclipse.m2e.core/mdo/codegeneration-model.xml0
2 files changed, 99 insertions, 0 deletions
diff --git a/codegeneration.txt b/codegeneration.txt
new file mode 100644
index 00000000..6e818884
--- /dev/null
+++ b/codegeneration.txt
@@ -0,0 +1,99 @@
+
+
+* modello list of model files (as String)
+ http://modello.codehaus.org/modello-maven-plugin/java-mojo.html
+* antlr3 uses sourceDirectory+includes+excludes and libDirectory
+ http://www.antlr.org/antlr3-maven-plugin/usage.html
+* jvnet:jaxb2 has most elaborate model for up-to-date check among plugins I've seen, relevant parameters
+ schemaDirectory+schemaIncludes+schemaExcludes, bindingDirectory+bindingIncludes+bindingExcludes,
+ catalog, produces (patters of files produced by this plugin), otherDepends
+ http://static.highsource.org/mjiip/maven-jaxb2-plugin/generate-mojo.html
+* cxf-codegen-plugin generates java from wsdl. several ways to specify input
+ wsdlRoot+includes+excludes,
+ wsdl+bindingFiles <= CUSTOM data objects!!!
+ http://cxf.apache.org/docs/maven-cxf-codegen-plugin-wsdl-to-java.html
+* jaxws-maven-plugin goes the other way around, it takes java class and generates jax-ws/wsdl descriptors
+ http://jax-ws-commons.java.net/jaxws-maven-plugin/wsgen-mojo.html
+* maven-jibx-plugin
+ schemaLocation+includes+excludes,
+ includeBaseBindings <= CUSTOM data objects!!!
+ http://jibx.sourceforge.net/maven-jibx-plugin/schema-codegen-mojo.html
+
+Ways to define generation inputs
+* directory+includes+excludes (possibly more than one)
+* list of input file paths as Strings
+* list of Files (jvnet:jaxb2 otherDepends)
+* collection of directory+includes+excludes
+* custom data structures
+
+
+
+=== modello
+
+<codegeneration>
+ <outputDirectories>
+ <outputDirectory>${mojo.outputDirectory}</outputDirectory>
+ </outputDirectories>
+
+ <!--
+ this is mostly theoretical exercise because modello
+ plexus-build-api and m2e does not need to know input sources.
+ still, using List<String> is a legitimate way to define generation input sources,
+ and we may want to support it even though there are no existing examples
+ -->
+ <inputPaths>${mojo.models}</inputPaths>
+
+ <!--
+ for plexus-build-api and later tesla-build-avoidance users,
+ we need to force incremental build support even when no generation input is declared
+ -->
+ <incremental>true</incremental>
+</codegeneration>
+
+
+=== antlr3
+
+<codegeneration>
+ <outputDirectories>
+ <outputDirectory>${mojo.outputDirectory}</outputDirectory>
+ </outputDirectories>
+
+ <inputResources>
+ <inputResource>
+ <directory>${mojo.sourceDirectory}</directory>
+ <includes>${mojo.includes}</includes>
+ <excludes>${mojo.excludes}</excludes>
+ </inputResource>
+ <inputResource>
+ <directory>${mojo.libDirectory}</directory>
+ </inputResource>
+ <inputResources>
+</codegeneration>
+
+
+=== jvnet:jaxb2
+
+<codegeneration>
+ <outputDirectories>
+ <outputDirectory>${mojo.generateDirectory}</outputDirectory>
+ </outputDirectories>
+
+ <inputResources>
+ <inputResource>
+ <directory>${mojo.schemaDirectory}</directory>
+ <includes>${mojo.schemaIncludes}</includes>
+ <excludes>${mojo.schemaExcludes}</excludes>
+ </inputResource>
+ <inputResource>
+ <directory>${mojo.bindingDirectory}</directory>
+ <includes>${mojo.bindingIncludes}</includes>
+ <excludes>${mojo.bindingExcludes}</excludes>
+ </inputResource>
+ <inputResources>
+
+ <inputFiles>${mojo.otherDepends}</inputFiles>
+</codegeneration>
+
+
+=== jibx
+
diff --git a/org.eclipse.m2e.core/mdo/codegeneration-model.xml b/org.eclipse.m2e.core/mdo/codegeneration-model.xml
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/org.eclipse.m2e.core/mdo/codegeneration-model.xml

Back to the top