From 9dbb1d13907ca2efefa67ed2a92bf26f781290db Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Wed, 20 Aug 2014 21:40:09 +0200 Subject: [PATCH] DATAJPA-593 - Improved detection of custom implementations for CDI repositories. Adapted to API changes in CDI extension. Related ticket: DATACMNS-565. --- .../data/jpa/repository/cdi/JpaRepositoryBean.java | 7 ++++--- .../data/jpa/repository/cdi/JpaRepositoryExtension.java | 4 +--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/springframework/data/jpa/repository/cdi/JpaRepositoryBean.java b/src/main/java/org/springframework/data/jpa/repository/cdi/JpaRepositoryBean.java index 12342531e..e5f7695f2 100644 --- a/src/main/java/org/springframework/data/jpa/repository/cdi/JpaRepositoryBean.java +++ b/src/main/java/org/springframework/data/jpa/repository/cdi/JpaRepositoryBean.java @@ -25,6 +25,7 @@ import javax.persistence.EntityManager; import org.springframework.data.jpa.repository.support.JpaRepositoryFactory; import org.springframework.data.repository.cdi.CdiRepositoryBean; +import org.springframework.data.repository.config.CustomRepositoryImplementationDetector; import org.springframework.util.Assert; /** @@ -46,12 +47,12 @@ class JpaRepositoryBean extends CdiRepositoryBean { * @param entityManagerBean must not be {@literal null}. * @param qualifiers must not be {@literal null}. * @param repositoryType must not be {@literal null}. - * @param customImplementationBean can be {@literal null}. + * @param detector can be {@literal null}. */ JpaRepositoryBean(BeanManager beanManager, Bean entityManagerBean, Set qualifiers, - Class repositoryType, Bean customImplementationBean) { + Class repositoryType, CustomRepositoryImplementationDetector detector) { - super(qualifiers, repositoryType, beanManager, customImplementationBean); + super(qualifiers, repositoryType, beanManager, detector); Assert.notNull(entityManagerBean); this.entityManagerBean = entityManagerBean; diff --git a/src/main/java/org/springframework/data/jpa/repository/cdi/JpaRepositoryExtension.java b/src/main/java/org/springframework/data/jpa/repository/cdi/JpaRepositoryExtension.java index 9360fbe13..eb1a60f52 100644 --- a/src/main/java/org/springframework/data/jpa/repository/cdi/JpaRepositoryExtension.java +++ b/src/main/java/org/springframework/data/jpa/repository/cdi/JpaRepositoryExtension.java @@ -119,10 +119,8 @@ public class JpaRepositoryExtension extends CdiRepositoryExtensionSupport { EntityManager.class.getName(), qualifiers)); } - Bean customImplementationBean = getCustomImplementationBean(repositoryType, beanManager, qualifiers); - // Construct and return the repository bean. return new JpaRepositoryBean(beanManager, entityManagerBean, qualifiers, repositoryType, - customImplementationBean); + getCustomImplementationDetector()); } }