diff --git a/pom.xml b/pom.xml
index 38986db65..88072e389 100644
--- a/pom.xml
+++ b/pom.xml
@@ -10,7 +10,7 @@
org.springframework.data.build
spring-data-parent
- 1.2.0.RELEASE
+ 1.3.0.RC1
../spring-data-build/parent/pom.xml
@@ -25,8 +25,7 @@
3.2.1
2.6
0.90.11
- 2.2.3
- 1.6.0.BUILD-SNAPSHOT
+ 1.7.0.RC1
@@ -36,7 +35,6 @@
org.springframework
spring-context
- ${spring}
commons-logging
@@ -48,15 +46,6 @@
org.springframework
spring-tx
- ${spring}
-
-
-
-
- cglib
- cglib
- 2.2.2
- test
@@ -158,8 +147,8 @@
- spring-libs-snapshot
- http://repo.springsource.org/libs-snapshot-local
+ spring-libs-milestone
+ http://repo.spring.io/libs-mileston
diff --git a/src/main/java/org/springframework/data/elasticsearch/repository/ElasticsearchCrudRepository.java b/src/main/java/org/springframework/data/elasticsearch/repository/ElasticsearchCrudRepository.java
index 1273d0b50..d2326731d 100644
--- a/src/main/java/org/springframework/data/elasticsearch/repository/ElasticsearchCrudRepository.java
+++ b/src/main/java/org/springframework/data/elasticsearch/repository/ElasticsearchCrudRepository.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2013 the original author or authors.
+ * Copyright 2013-2014 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -15,10 +15,10 @@
*/
package org.springframework.data.elasticsearch.repository;
-import org.springframework.data.repository.PagingAndSortingRepository;
-
import java.io.Serializable;
-import java.util.List;
+
+import org.springframework.data.repository.NoRepositoryBean;
+import org.springframework.data.repository.PagingAndSortingRepository;
/**
* @param
@@ -26,7 +26,9 @@ import java.util.List;
*
* @author Rizwan Idrees
* @author Mohsin Husen
+ * @author Oliver Gierke
*/
+@NoRepositoryBean
public interface ElasticsearchCrudRepository extends PagingAndSortingRepository {
}
diff --git a/src/main/java/org/springframework/data/elasticsearch/repository/cdi/ElasticsearchRepositoryExtension.java b/src/main/java/org/springframework/data/elasticsearch/repository/cdi/ElasticsearchRepositoryExtension.java
index 4fe639395..afd71ce37 100644
--- a/src/main/java/org/springframework/data/elasticsearch/repository/cdi/ElasticsearchRepositoryExtension.java
+++ b/src/main/java/org/springframework/data/elasticsearch/repository/cdi/ElasticsearchRepositoryExtension.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2013 the original author or authors.
+ * Copyright 2013-2014 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -16,6 +16,7 @@
package org.springframework.data.elasticsearch.repository.cdi;
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
+import org.springframework.data.repository.cdi.CdiRepositoryBean;
import org.springframework.data.repository.cdi.CdiRepositoryExtensionSupport;
import javax.enterprise.event.Observes;
@@ -36,8 +37,8 @@ import java.util.Set;
*
* @author Rizwan Idrees
* @author Mohsin Husen
+ * @author Oliver Gierke
*/
-
public class ElasticsearchRepositoryExtension extends CdiRepositoryExtensionSupport {
private final Map> elasticsearchOperationsMap = new HashMap>();
@@ -58,12 +59,14 @@ public class ElasticsearchRepositoryExtension extends CdiRepositoryExtensionSupp
Class> repositoryType = entry.getKey();
Set qualifiers = entry.getValue();
- Bean> repositoryBean = createRepositoryBean(repositoryType, qualifiers, beanManager);
+ CdiRepositoryBean> repositoryBean = createRepositoryBean(repositoryType, qualifiers, beanManager);
afterBeanDiscovery.addBean(repositoryBean);
+ registerBean(repositoryBean);
}
}
- private Bean createRepositoryBean(Class repositoryType, Set qualifiers, BeanManager beanManager) {
+ private CdiRepositoryBean createRepositoryBean(Class repositoryType, Set qualifiers, BeanManager beanManager) {
+
Bean elasticsearchOperationsBean = this.elasticsearchOperationsMap.get(qualifiers
.toString());
@@ -71,7 +74,7 @@ public class ElasticsearchRepositoryExtension extends CdiRepositoryExtensionSupp
throw new UnsatisfiedResolutionException(String.format("Unable to resolve a bean for '%s' with qualifiers %s.",
ElasticsearchOperations.class.getName(), qualifiers));
}
+
return new ElasticsearchRepositoryBean(elasticsearchOperationsBean, qualifiers, repositoryType, beanManager);
}
-
}
diff --git a/src/main/java/org/springframework/data/elasticsearch/repository/support/ElasticsearchEntityInformationCreatorImpl.java b/src/main/java/org/springframework/data/elasticsearch/repository/support/ElasticsearchEntityInformationCreatorImpl.java
index 07e7f3489..8a4dd443f 100644
--- a/src/main/java/org/springframework/data/elasticsearch/repository/support/ElasticsearchEntityInformationCreatorImpl.java
+++ b/src/main/java/org/springframework/data/elasticsearch/repository/support/ElasticsearchEntityInformationCreatorImpl.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2013 the original author or authors.
+ * Copyright 2013-2014 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -27,6 +27,7 @@ import java.io.Serializable;
*
* @author Rizwan Idrees
* @author Mohsin Husen
+ * @author Oliver Gierke
*/
public class ElasticsearchEntityInformationCreatorImpl implements ElasticsearchEntityInformationCreator {
@@ -41,9 +42,12 @@ public class ElasticsearchEntityInformationCreatorImpl implements ElasticsearchE
@Override
@SuppressWarnings("unchecked")
public ElasticsearchEntityInformation getEntityInformation(Class domainClass) {
+
ElasticsearchPersistentEntity persistentEntity = (ElasticsearchPersistentEntity) mappingContext
.getPersistentEntity(domainClass);
+
+ Assert.notNull(persistentEntity, String.format("Unable to obtain mapping metadata for %s!", domainClass));
+
return new MappingElasticsearchEntityInformation(persistentEntity);
}
-
}
diff --git a/src/test/java/org/springframework/data/elasticsearch/repositories/NonDocumentEntityRepository.java b/src/test/java/org/springframework/data/elasticsearch/repositories/NonDocumentEntityRepository.java
index e78f14ab3..8d911ab1f 100644
--- a/src/test/java/org/springframework/data/elasticsearch/repositories/NonDocumentEntityRepository.java
+++ b/src/test/java/org/springframework/data/elasticsearch/repositories/NonDocumentEntityRepository.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2013 the original author or authors.
+ * Copyright 2013-2014 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -15,12 +15,15 @@
*/
package org.springframework.data.elasticsearch.repositories;
+import org.springframework.context.annotation.Lazy;
import org.springframework.data.elasticsearch.NonDocumentEntity;
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
/**
* @author Rizwan Idrees
* @author Mohsin Husen
+ * @author Oliver Gierke
*/
+@Lazy
public interface NonDocumentEntityRepository extends ElasticsearchRepository {
}
diff --git a/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiProductRepository.java b/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiProductRepository.java
index 236ddb5ed..b061f6048 100644
--- a/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiProductRepository.java
+++ b/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiProductRepository.java
@@ -20,10 +20,9 @@ import org.springframework.data.repository.CrudRepository;
/**
* @author Mohsin Husen
+ * @author Oliver Gierke
*/
-
-public interface CDIProductRepository extends CrudRepository {
+public interface CdiProductRepository extends CrudRepository {
Product findOne(String id);
-
}
diff --git a/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiRepositoryClient.java b/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiRepositoryClient.java
index 9e5ed9597..cc2a6b9fa 100644
--- a/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiRepositoryClient.java
+++ b/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiRepositoryClient.java
@@ -19,17 +19,18 @@ import javax.inject.Inject;
/**
* @author Mohsin Husen
+ * @author Oliver Gierke
*/
-class CDIRepositoryClient {
+class CdiRepositoryClient {
- private CDIProductRepository repository;
+ private CdiProductRepository repository;
- public CDIProductRepository getRepository() {
+ public CdiProductRepository getRepository() {
return repository;
}
@Inject
- public void setRepository(CDIProductRepository repository) {
+ public void setRepository(CdiProductRepository repository) {
this.repository = repository;
}
diff --git a/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiRepositoryTests.java b/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiRepositoryTests.java
index ca6c40a1d..7f2770500 100644
--- a/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiRepositoryTests.java
+++ b/src/test/java/org/springframework/data/elasticsearch/repositories/cdi/CdiRepositoryTests.java
@@ -26,10 +26,10 @@ import static org.junit.Assert.*;
* @author Mohsin Husen
*/
-public class CDIRepositoryTests {
+public class CdiRepositoryTests {
private static CdiTestContainer cdiContainer;
- private CDIProductRepository repository;
+ private CdiProductRepository repository;
@BeforeClass
public static void init() throws Exception {
@@ -46,7 +46,7 @@ public class CDIRepositoryTests {
@Before
public void setUp() {
- CDIRepositoryClient client = cdiContainer.getInstance(CDIRepositoryClient.class);
+ CdiRepositoryClient client = cdiContainer.getInstance(CdiRepositoryClient.class);
repository = client.getRepository();
}
diff --git a/template.mf b/template.mf
index 5b25ec451..f0dac7b43 100644
--- a/template.mf
+++ b/template.mf
@@ -14,7 +14,7 @@ Import-Template:
org.elasticsearch.*;version="${elasticsearch:[=.=.=,+1.0.0)}",
org.joda.time.*;version="${jodatime:[=.=.=,+1.0.0)}",
org.slf4j.*;version="${slf4j:[=.=.=,+1.0.0)}",
- org.springframework.*;version="${spring30:[=.=.=.=,+1.0.0)}",
+ org.springframework.*;version="${spring:[=.=.=.=,+1.0.0)}",
org.springframework.data.*;version="${springdata.commons:[=.=.=.=,+1.0.0)}",
org.w3c.*;version="0.0.0"
\ No newline at end of file