DATADOC-119 added test using 'afterMappingMongoConverterCreation' to register custom converters

This commit is contained in:
Thomas Risberg
2011-05-15 11:26:48 -04:00
parent 2212ca4b00
commit 4e04d0acd1
3 changed files with 56 additions and 0 deletions

View File

@@ -49,6 +49,10 @@ import com.mongodb.MongoException;
@ContextConfiguration("classpath:template-mapping.xml")
public class MongoTemplateMappingTests {
@Autowired
@Qualifier("mongoTemplate")
MongoTemplate template0;
@Autowired
@Qualifier("mongoTemplate1")
MongoTemplate template1;
@@ -65,6 +69,14 @@ public class MongoTemplateMappingTests {
template1.dropCollection(template1.getCollectionName(Person.class));
}
@Test
public void insertsEntityCorrectly0() throws Exception {
addAndRetrievePerson(template0);
checkPersonPersisted(template0);
}
@Test
public void insertsEntityCorrectly1() throws Exception {

View File

@@ -0,0 +1,42 @@
package org.springframework.data.document.mongodb;
import java.util.ArrayList;
import java.util.List;
import org.springframework.context.annotation.Bean;
import org.springframework.core.convert.converter.Converter;
import org.springframework.data.document.mongodb.config.AbstractMongoConfiguration;
import org.springframework.data.document.mongodb.convert.MappingMongoConverter;
import com.mongodb.Mongo;
public class TestMongoConfiguration extends AbstractMongoConfiguration {
@Bean
public Mongo mongo() throws Exception {
return new Mongo("localhost", 27017);
}
@Bean
public MongoTemplate mongoTemplate() throws Exception {
return new MongoTemplate(mongo(), "database", mappingMongoConverter());
}
@Override
public String getMappingBasePackage() {
return "org.springframework.data.document.mongodb.mapping";
}
@Override
protected void afterMappingMongoConverterCreation(
MappingMongoConverter converter) {
super.afterMappingMongoConverterCreation(converter);
List<Converter<?, ?>> converterList = new ArrayList<Converter<?, ?>>();
converterList.add(new org.springframework.data.document.mongodb.PersonReadConverter());
converterList.add(new org.springframework.data.document.mongodb.PersonWriteConverter());
converter.setConverters(converterList);
}
}

View File

@@ -5,6 +5,8 @@
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/data/mongo http://www.springframework.org/schema/data/mongo/spring-mongo-1.0.xsd">
<bean class="org.springframework.data.document.mongodb.TestMongoConfiguration"/>
<mongo:mongo host="localhost" port="27017"/>
<bean id="mappingConverter1" class="org.springframework.data.document.mongodb.convert.MappingMongoConverter">