Skip to content

Commit 89a02bb

Browse files
committed
DATAMONGO-1566 - Adapt API in MongoRepositoryFactoryBean.
Related tickets: DATACMNS-891.
1 parent c9c5fe6 commit 89a02bb

File tree

5 files changed

+21
-29
lines changed

5 files changed

+21
-29
lines changed

spring-data-mongodb/src/main/java/org/springframework/data/mongodb/repository/support/MongoRepositoryFactoryBean.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,13 +30,22 @@
3030
*
3131
* @author Oliver Gierke
3232
*/
33-
public class MongoRepositoryFactoryBean<T extends Repository<S, ID>, S, ID extends Serializable> extends
34-
RepositoryFactoryBeanSupport<T, S, ID> {
33+
public class MongoRepositoryFactoryBean<T extends Repository<S, ID>, S, ID extends Serializable>
34+
extends RepositoryFactoryBeanSupport<T, S, ID> {
3535

3636
private MongoOperations operations;
3737
private boolean createIndexesForQueryMethods = false;
3838
private boolean mappingContextConfigured = false;
3939

40+
/**
41+
* Creates a new {@link MongoRepositoryFactoryBean} for the given repository interface.
42+
*
43+
* @param repositoryInterface must not be {@literal null}.
44+
*/
45+
public MongoRepositoryFactoryBean(Class<? extends T> repositoryInterface) {
46+
super(repositoryInterface);
47+
}
48+
4049
/**
4150
* Configures the {@link MongoOperations} to be used.
4251
*

spring-data-mongodb/src/test/java/org/springframework/data/mongodb/performance/PerformanceTests.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -97,9 +97,9 @@ public void setUp() throws Exception {
9797
this.converter = new MappingMongoConverter(new DefaultDbRefResolver(mongoDbFactory), context);
9898
this.operations = new MongoTemplate(new SimpleMongoDbFactory(this.mongo, DATABASE_NAME), converter);
9999

100-
MongoRepositoryFactoryBean<PersonRepository, Person, ObjectId> factory = new MongoRepositoryFactoryBean<PersonRepository, Person, ObjectId>();
100+
MongoRepositoryFactoryBean<PersonRepository, Person, ObjectId> factory = new MongoRepositoryFactoryBean<PersonRepository, Person, ObjectId>(
101+
PersonRepository.class);
101102
factory.setMongoOperations(operations);
102-
factory.setRepositoryInterface(PersonRepository.class);
103103
factory.afterPropertiesSet();
104104

105105
this.repository = factory.getObject();
@@ -125,8 +125,8 @@ public void doWithWriteConcern(String constantName, WriteConcern concern) {
125125
@Test
126126
public void plainConversion() throws InterruptedException {
127127

128-
Statistics statistics = new Statistics("Plain conversion of " + NUMBER_OF_PERSONS * 100
129-
+ " persons - After %s iterations");
128+
Statistics statistics = new Statistics(
129+
"Plain conversion of " + NUMBER_OF_PERSONS * 100 + " persons - After %s iterations");
130130

131131
List<DBObject> dbObjects = getPersonDBObjects(NUMBER_OF_PERSONS * 100);
132132

@@ -842,8 +842,8 @@ public String print(double referenceAverage, double referenceMedian) {
842842
*/
843843
@Override
844844
public String toString() {
845-
return times.isEmpty() ? "" : String.format("%s, %s: %s", api, mode,
846-
StringUtils.collectionToCommaDelimitedString(times)) + '\n';
845+
return times.isEmpty() ? ""
846+
: String.format("%s, %s: %s", api, mode, StringUtils.collectionToCommaDelimitedString(times)) + '\n';
847847
}
848848
}
849849

spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/config/MongoRepositoriesRegistrarIntegrationTests.java

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,6 @@
1515
*/
1616
package org.springframework.data.mongodb.repository.config;
1717

18-
import static org.hamcrest.CoreMatchers.*;
19-
import static org.junit.Assert.*;
20-
21-
import java.util.Arrays;
22-
2318
import org.junit.Test;
2419
import org.junit.runner.RunWith;
2520
import org.springframework.beans.factory.annotation.Autowired;
@@ -59,15 +54,4 @@ public MongoOperations mongoTemplate() throws Exception {
5954

6055
@Test
6156
public void testConfiguration() {}
62-
63-
/**
64-
* @see DATAMONGO-901
65-
*/
66-
@Test
67-
public void registersTypePredictingPostProcessor() {
68-
69-
Iterable<String> beanNames = Arrays.asList(context.getBeanDefinitionNames());
70-
71-
assertThat(beanNames, hasItem(containsString("RepositoryFactoryBeanSupport_Predictor")));
72-
}
7357
}

spring-data-mongodb/src/test/java/org/springframework/data/mongodb/repository/support/MongoRepositoryFactoryBeanUnitTests.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ public class MongoRepositoryFactoryBeanUnitTests {
4848
@SuppressWarnings("rawtypes")
4949
public void addsIndexEnsuringQueryCreationListenerIfConfigured() {
5050

51-
MongoRepositoryFactoryBean factory = new MongoRepositoryFactoryBean();
51+
MongoRepositoryFactoryBean factory = new MongoRepositoryFactoryBean(ContactRepository.class);
5252
factory.setCreateIndexesForQueryMethods(true);
5353

5454
List<Object> listeners = getListenersFromFactory(factory);
@@ -60,7 +60,7 @@ public void addsIndexEnsuringQueryCreationListenerIfConfigured() {
6060
@SuppressWarnings("rawtypes")
6161
public void doesNotAddIndexEnsuringQueryCreationListenerByDefault() {
6262

63-
List<Object> listeners = getListenersFromFactory(new MongoRepositoryFactoryBean());
63+
List<Object> listeners = getListenersFromFactory(new MongoRepositoryFactoryBean(ContactRepository.class));
6464
assertThat(listeners.size(), is(1));
6565
}
6666

@@ -72,7 +72,6 @@ private List<Object> getListenersFromFactory(MongoRepositoryFactoryBean factoryB
7272

7373
factoryBean.setLazyInit(true);
7474
factoryBean.setMongoOperations(operations);
75-
factoryBean.setRepositoryInterface(ContactRepository.class);
7675
factoryBean.afterPropertiesSet();
7776

7877
RepositoryFactorySupport factory = factoryBean.createRepositoryFactory();

spring-data-mongodb/src/test/resources/org/springframework/data/mongodb/repository/PersonRepositoryIntegrationTests-context.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
</bean>
1818

1919
<bean class="org.springframework.data.mongodb.repository.support.MongoRepositoryFactoryBean">
20+
<constructor-arg value="org.springframework.data.mongodb.repository.PersonRepository"/>
2021
<property name="mongoOperations" ref="mongoTemplate"/>
21-
<property name="repositoryInterface" value="org.springframework.data.mongodb.repository.PersonRepository"/>
2222
<property name="namedQueries">
2323
<bean class="org.springframework.data.repository.core.support.PropertiesBasedNamedQueries">
2424
<constructor-arg>
@@ -34,5 +34,5 @@
3434
<bean class="org.springframework.data.mongodb.repository.SampleEvaluationContextExtension"/>
3535
</constructor-arg>
3636
</bean>
37-
37+
3838
</beans>

0 commit comments

Comments
 (0)