From d0b7901ce83705a9e74c15a8c1ef67a2f44eb9e0 Mon Sep 17 00:00:00 2001 From: Oliver Gierke Date: Tue, 19 Jul 2011 13:21:14 +0200 Subject: [PATCH] DATAJPA-78 - Upgrade to Querydsl 2.2.0. Upgraded to Querydsl 2.2.0. Added configuration to generate query classes for AbstractPersistable and AbstractAuditable. Package those query classes into the source JAR and compile it into the binary as well. Upgraded Mysema APT plugin to 1.0.2. --- pom.xml | 32 ++++++++++++++++--- .../support/QueryDslJpaRepository.java | 5 ++- .../query/ParameterBinderUnitTests.java | 2 +- .../JpaRepositoryFactoryUnitTests.java | 17 +++++++--- .../util/JpaClassUtilsUnitTests.java | 2 +- 5 files changed, 46 insertions(+), 12 deletions(-) diff --git a/pom.xml b/pom.xml index 795e36e23..3b589cbfe 100644 --- a/pom.xml +++ b/pom.xml @@ -58,7 +58,7 @@ 2.1.0 2.2.0 1.6.8 - 2.1.1 + 2.2.0 4.8.1 2.0.0 1.6.1 @@ -508,6 +508,12 @@ jar + + + src/main/java + target/generated-sources/main + + @@ -532,16 +538,34 @@ com.mysema.maven maven-apt-plugin - 1.0 + 1.0.2 + + com.mysema.query.apt.jpa.JPAAnnotationProcessor + + sources + generate-sources + + process + + + target/generated-sources/main + + + + test-sources generate-test-sources test-process - target/generated-sources/test-annotations - com.mysema.query.apt.jpa.JPAAnnotationProcessor + target/generated-sources/test + + + org.springframework.data.jpa.repository.util.JpaClassUtilsUnitTests.NamedUser,org.springframework.data.jpa.repository.query.ParameterBinderUnitTests.SampleEmbeddable + + diff --git a/src/main/java/org/springframework/data/jpa/repository/support/QueryDslJpaRepository.java b/src/main/java/org/springframework/data/jpa/repository/support/QueryDslJpaRepository.java index 11aa01629..0957465d5 100644 --- a/src/main/java/org/springframework/data/jpa/repository/support/QueryDslJpaRepository.java +++ b/src/main/java/org/springframework/data/jpa/repository/support/QueryDslJpaRepository.java @@ -47,6 +47,9 @@ import com.mysema.query.types.path.PathBuilder; public class QueryDslJpaRepository extends SimpleJpaRepository implements QueryDslPredicateExecutor { + private static final EntityPathResolver DEFAULT_ENTITY_PATH_RESOLVER = + SimpleEntityPathResolver.INSTANCE; + private final EntityManager em; private final EntityPath path; private final PathBuilder builder; @@ -64,7 +67,7 @@ public class QueryDslJpaRepository extends public QueryDslJpaRepository(JpaEntityInformation entityMetadata, EntityManager entityManager) { - this(entityMetadata, entityManager, SimpleEntityPathResolver.INSTANCE); + this(entityMetadata, entityManager, DEFAULT_ENTITY_PATH_RESOLVER); } diff --git a/src/test/java/org/springframework/data/jpa/repository/query/ParameterBinderUnitTests.java b/src/test/java/org/springframework/data/jpa/repository/query/ParameterBinderUnitTests.java index 34957e24d..0bfa12a10 100644 --- a/src/test/java/org/springframework/data/jpa/repository/query/ParameterBinderUnitTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/query/ParameterBinderUnitTests.java @@ -220,7 +220,7 @@ public class ParameterBinderUnitTests { @Embeddable @SuppressWarnings("unused") - static class SampleEmbeddable { + public static class SampleEmbeddable { private String foo; private String bar; diff --git a/src/test/java/org/springframework/data/jpa/repository/support/JpaRepositoryFactoryUnitTests.java b/src/test/java/org/springframework/data/jpa/repository/support/JpaRepositoryFactoryUnitTests.java index 3bc085ac1..41ac475c0 100644 --- a/src/test/java/org/springframework/data/jpa/repository/support/JpaRepositoryFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/support/JpaRepositoryFactoryUnitTests.java @@ -15,8 +15,9 @@ */ package org.springframework.data.jpa.repository.support; -import static junit.framework.Assert.*; +import static org.junit.Assert.*; import static org.mockito.Mockito.*; +import static org.hamcrest.CoreMatchers.*; import java.io.IOException; import java.io.Serializable; @@ -159,10 +160,16 @@ public class JpaRepositoryFactoryUnitTests { factory.getRepositoryBaseClass(new DefaultRepositoryMetadata( QueryDslSampleRepository.class))); - QueryDslSampleRepository repository = - factory.getRepository(QueryDslSampleRepository.class); - assertEquals(QueryDslJpaRepository.class, - ((Advised) repository).getTargetClass()); + try { + QueryDslSampleRepository repository = + factory.getRepository(QueryDslSampleRepository.class); + assertEquals(QueryDslJpaRepository.class, + ((Advised) repository).getTargetClass()); + } catch (IllegalArgumentException e) { + assertThat( + e.getStackTrace()[0].getClassName(), + is("org.springframework.data.querydsl.SimpleEntityPathResolver")); + } } private interface SimpleSampleRepository extends diff --git a/src/test/java/org/springframework/data/jpa/repository/util/JpaClassUtilsUnitTests.java b/src/test/java/org/springframework/data/jpa/repository/util/JpaClassUtilsUnitTests.java index 206cc5f1b..784f5d7ea 100644 --- a/src/test/java/org/springframework/data/jpa/repository/util/JpaClassUtilsUnitTests.java +++ b/src/test/java/org/springframework/data/jpa/repository/util/JpaClassUtilsUnitTests.java @@ -40,7 +40,7 @@ public class JpaClassUtilsUnitTests { } @Entity(name = "AnotherNamedUser") - public static class NamedUser { + public class NamedUser { } }