From bb399851f29be96081aede6815f5e874018d94e8 Mon Sep 17 00:00:00 2001 From: Matthew Adams Date: Mon, 8 Apr 2013 14:37:01 -0500 Subject: [PATCH] GenericExporter imporovements --- querydsl-apt/pom.xml | 2 +- querydsl-codegen/pom.xml | 2 +- querydsl-collections/pom.xml | 2 +- querydsl-core/pom.xml | 2 +- querydsl-hibernate-search/pom.xml | 2 +- querydsl-jdo/pom.xml | 2 +- querydsl-jpa-codegen/pom.xml | 2 +- querydsl-jpa/pom.xml | 2 +- querydsl-lucene/pom.xml | 2 +- querydsl-maven-plugin/pom.xml | 2 +- .../query/maven/AbstractExporterMojo.java | 38 ++++++++++++++++++- .../query/maven/GenericExporterMojo.java | 8 ---- .../mysema/query/maven/JDOExporterMojo.java | 2 +- .../mysema/query/maven/JPAExporterMojo.java | 2 +- querydsl-mongodb/pom.xml | 2 +- querydsl-root/pom.xml | 2 +- querydsl-scala/pom.xml | 2 +- querydsl-sql-codegen/pom.xml | 2 +- querydsl-sql/pom.xml | 2 +- 19 files changed, 54 insertions(+), 26 deletions(-) diff --git a/querydsl-apt/pom.xml b/querydsl-apt/pom.xml index a32d89d54..efac22b2e 100644 --- a/querydsl-apt/pom.xml +++ b/querydsl-apt/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-codegen/pom.xml b/querydsl-codegen/pom.xml index 3686a3b94..3ad190ab0 100644 --- a/querydsl-codegen/pom.xml +++ b/querydsl-codegen/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-collections/pom.xml b/querydsl-collections/pom.xml index 1bb774547..4b4d299eb 100644 --- a/querydsl-collections/pom.xml +++ b/querydsl-collections/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-core/pom.xml b/querydsl-core/pom.xml index 295dcb8cc..25a10b948 100644 --- a/querydsl-core/pom.xml +++ b/querydsl-core/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-hibernate-search/pom.xml b/querydsl-hibernate-search/pom.xml index 81e502e41..2e35f64d7 100644 --- a/querydsl-hibernate-search/pom.xml +++ b/querydsl-hibernate-search/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-jdo/pom.xml b/querydsl-jdo/pom.xml index a573dd336..d737b8dd7 100644 --- a/querydsl-jdo/pom.xml +++ b/querydsl-jdo/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-jpa-codegen/pom.xml b/querydsl-jpa-codegen/pom.xml index 9b0f38380..8094f3e7e 100644 --- a/querydsl-jpa-codegen/pom.xml +++ b/querydsl-jpa-codegen/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-jpa/pom.xml b/querydsl-jpa/pom.xml index d2bb9bf6d..b17739dbe 100644 --- a/querydsl-jpa/pom.xml +++ b/querydsl-jpa/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-lucene/pom.xml b/querydsl-lucene/pom.xml index 95424c0fe..33c41bc30 100644 --- a/querydsl-lucene/pom.xml +++ b/querydsl-lucene/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-maven-plugin/pom.xml b/querydsl-maven-plugin/pom.xml index 2c7c2832c..dd3b7842c 100644 --- a/querydsl-maven-plugin/pom.xml +++ b/querydsl-maven-plugin/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/AbstractExporterMojo.java b/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/AbstractExporterMojo.java index e9a679b82..d1f5df8ce 100644 --- a/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/AbstractExporterMojo.java +++ b/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/AbstractExporterMojo.java @@ -53,6 +53,16 @@ public abstract class AbstractExporterMojo extends AbstractMojo { * @parameter */ private String[] packages; + + /** + * @parameter default-value=true + */ + private boolean handleFields = true; + + /** + * @parameter default-value=true + */ + private boolean handleMethods = true; /** * @parameter expression="${project}" readonly=true required=true @@ -113,7 +123,26 @@ public abstract class AbstractExporterMojo extends AbstractMojo { exporter.export(packages); } - protected abstract void configure(GenericExporter exporter); + /** + * Configures the {@link GenericExporter} generically; subclasses may override if desired. + * @see #configureSpecifically(GenericExporter) + */ + protected void configure(GenericExporter exporter) { + exporter.setHandleFields(handleFields); + exporter.setHandleMethods(handleMethods); + + configureSpecifically(exporter); + } + + /** + * Configures the {@link GenericExporter} specifically for the technology at + * hand. This method is intended to be overridden, but not required if there + * are no specifics to be configured. + * + * @see #configure(GenericExporter) + */ + protected void configureSpecifically(GenericExporter exporter) { + } @SuppressWarnings("unchecked") protected ClassLoader getProjectClassLoader() throws DependencyResolutionRequiredException, @@ -178,4 +207,11 @@ public abstract class AbstractExporterMojo extends AbstractMojo { this.buildContext = buildContext; } + public void setHandleFields(boolean handleFields) { + this.handleFields = handleFields; + } + + public void setHandleMethods(boolean handleMethods) { + this.handleMethods = handleMethods; + } } diff --git a/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/GenericExporterMojo.java b/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/GenericExporterMojo.java index 4c65b3138..c9d9a57f9 100644 --- a/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/GenericExporterMojo.java +++ b/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/GenericExporterMojo.java @@ -13,8 +13,6 @@ */ package com.mysema.query.maven; -import com.mysema.query.codegen.GenericExporter; - /** * GenericExporterMojo calls the GenericExporter tool using the classpath of the module * @@ -22,10 +20,4 @@ import com.mysema.query.codegen.GenericExporter; * @requiresDependencyResolution test */ public class GenericExporterMojo extends AbstractExporterMojo { - - @Override - protected void configure(GenericExporter exporter) { - // do nothing - } - } diff --git a/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/JDOExporterMojo.java b/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/JDOExporterMojo.java index 201de0960..b7ca90a66 100644 --- a/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/JDOExporterMojo.java +++ b/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/JDOExporterMojo.java @@ -30,7 +30,7 @@ import com.mysema.query.codegen.GenericExporter; public class JDOExporterMojo extends AbstractExporterMojo { @Override - protected void configure(GenericExporter exporter) { + protected void configureSpecifically(GenericExporter exporter) { exporter.setEmbeddableAnnotation(EmbeddedOnly.class); exporter.setEmbeddedAnnotation(Embedded.class); exporter.setEntityAnnotation(PersistenceCapable.class); diff --git a/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/JPAExporterMojo.java b/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/JPAExporterMojo.java index 7a2c2e6ca..fcedb5c91 100644 --- a/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/JPAExporterMojo.java +++ b/querydsl-maven-plugin/src/main/java/com/mysema/query/maven/JPAExporterMojo.java @@ -31,7 +31,7 @@ import com.mysema.query.codegen.GenericExporter; public class JPAExporterMojo extends AbstractExporterMojo { @Override - protected void configure(GenericExporter exporter) { + protected void configureSpecifically(GenericExporter exporter) { exporter.setEmbeddableAnnotation(Embeddable.class); exporter.setEmbeddedAnnotation(Embedded.class); exporter.setEntityAnnotation(Entity.class); diff --git a/querydsl-mongodb/pom.xml b/querydsl-mongodb/pom.xml index 8ed64fa88..60aa81616 100644 --- a/querydsl-mongodb/pom.xml +++ b/querydsl-mongodb/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-root/pom.xml b/querydsl-root/pom.xml index f57d93f60..2a18def57 100644 --- a/querydsl-root/pom.xml +++ b/querydsl-root/pom.xml @@ -4,7 +4,7 @@ 4.0.0 com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT Querydsl parent project for Querydsl modules http://www.querydsl.com diff --git a/querydsl-scala/pom.xml b/querydsl-scala/pom.xml index e4c5b9183..3f4f56a3a 100644 --- a/querydsl-scala/pom.xml +++ b/querydsl-scala/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-sql-codegen/pom.xml b/querydsl-sql-codegen/pom.xml index 5ceae03f1..1781df4a6 100644 --- a/querydsl-sql-codegen/pom.xml +++ b/querydsl-sql-codegen/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml diff --git a/querydsl-sql/pom.xml b/querydsl-sql/pom.xml index f6558d843..5dbd16495 100644 --- a/querydsl-sql/pom.xml +++ b/querydsl-sql/pom.xml @@ -5,7 +5,7 @@ com.mysema.querydsl querydsl-root - 3.1.0.BUILD-SNAPSHOT + 3.1.1.BUILD-SNAPSHOT ../querydsl-root/pom.xml