diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/AbstractMongoConverter.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/AbstractMongoConverter.java index 023603e6f..be2f90b13 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/AbstractMongoConverter.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/convert/AbstractMongoConverter.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2013 the original author or authors. + * Copyright 2011-2015 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. @@ -20,7 +20,7 @@ import java.math.BigInteger; import org.bson.types.ObjectId; import org.springframework.beans.factory.InitializingBean; import org.springframework.core.convert.ConversionService; -import org.springframework.core.convert.support.ConversionServiceFactory; +import org.springframework.core.convert.support.DefaultConversionService; import org.springframework.core.convert.support.GenericConversionService; import org.springframework.data.convert.EntityInstantiators; import org.springframework.data.mongodb.core.convert.MongoConverters.BigIntegerToObjectIdConverter; @@ -46,10 +46,8 @@ public abstract class AbstractMongoConverter implements MongoConverter, Initiali * * @param conversionService */ - @SuppressWarnings("deprecation") public AbstractMongoConverter(GenericConversionService conversionService) { - this.conversionService = conversionService == null ? ConversionServiceFactory.createDefaultConversionService() - : conversionService; + this.conversionService = conversionService == null ? new DefaultConversionService() : conversionService; } /** diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/MongoMappingEventPublisher.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/MongoMappingEventPublisher.java index ddd1fcdbc..26ce21680 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/MongoMappingEventPublisher.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/MongoMappingEventPublisher.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2012 the original author or authors. + * Copyright 2011-2015 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. @@ -60,4 +60,10 @@ public class MongoMappingEventPublisher implements ApplicationEventPublisher { indexCreator.onApplicationEvent((MappingContextEvent, MongoPersistentProperty>) event); } } + + /* + * (non-Javadoc) + * @see org.springframework.context.ApplicationEventPublisher#publishEvent(java.lang.Object) + */ + public void publishEvent(Object event) {} } diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/MongoPersistentEntityIndexCreator.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/MongoPersistentEntityIndexCreator.java index d6f73b2b1..945959ca6 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/MongoPersistentEntityIndexCreator.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/index/MongoPersistentEntityIndexCreator.java @@ -1,5 +1,5 @@ /* - * Copyright 2011-2014 the original author or authors. + * Copyright 2011-2015 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. @@ -29,7 +29,6 @@ import org.springframework.data.mongodb.core.index.MongoPersistentEntityIndexRes import org.springframework.data.mongodb.core.mapping.Document; import org.springframework.data.mongodb.core.mapping.MongoMappingContext; import org.springframework.data.mongodb.core.mapping.MongoPersistentEntity; -import org.springframework.data.mongodb.core.mapping.MongoPersistentProperty; import org.springframework.util.Assert; /** @@ -43,8 +42,7 @@ import org.springframework.util.Assert; * @author Laurent Canet * @author Christoph Strobl */ -public class MongoPersistentEntityIndexCreator implements - ApplicationListener, MongoPersistentProperty>> { +public class MongoPersistentEntityIndexCreator implements ApplicationListener> { private static final Logger LOGGER = LoggerFactory.getLogger(MongoPersistentEntityIndexCreator.class); @@ -54,7 +52,7 @@ public class MongoPersistentEntityIndexCreator implements private final IndexResolver indexResolver; /** - * Creats a new {@link MongoPersistentEntityIndexCreator} for the given {@link MongoMappingContext} and + * Creates a new {@link MongoPersistentEntityIndexCreator} for the given {@link MongoMappingContext} and * {@link MongoDbFactory}. * * @param mappingContext must not be {@literal null}. @@ -65,7 +63,7 @@ public class MongoPersistentEntityIndexCreator implements } /** - * Creats a new {@link MongoPersistentEntityIndexCreator} for the given {@link MongoMappingContext} and + * Creates a new {@link MongoPersistentEntityIndexCreator} for the given {@link MongoMappingContext} and * {@link MongoDbFactory}. * * @param mappingContext must not be {@literal null}. @@ -92,7 +90,7 @@ public class MongoPersistentEntityIndexCreator implements * (non-Javadoc) * @see org.springframework.context.ApplicationListener#onApplicationEvent(org.springframework.context.ApplicationEvent) */ - public void onApplicationEvent(MappingContextEvent, MongoPersistentProperty> event) { + public void onApplicationEvent(MappingContextEvent event) { if (!event.wasEmittedBy(mappingContext)) { return; @@ -102,7 +100,7 @@ public class MongoPersistentEntityIndexCreator implements // Double check type as Spring infrastructure does not consider nested generics if (entity instanceof MongoPersistentEntity) { - checkForIndexes(event.getPersistentEntity()); + checkForIndexes((MongoPersistentEntity) entity); } } @@ -132,8 +130,8 @@ public class MongoPersistentEntityIndexCreator implements } private void createIndex(IndexDefinitionHolder indexDefinition) { - mongoDbFactory.getDb().getCollection(indexDefinition.getCollection()) - .createIndex(indexDefinition.getIndexKeys(), indexDefinition.getIndexOptions()); + mongoDbFactory.getDb().getCollection(indexDefinition.getCollection()).createIndex(indexDefinition.getIndexKeys(), + indexDefinition.getIndexOptions()); } /** diff --git a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapping/event/PersonBeforeSaveListener.java b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapping/event/PersonBeforeSaveListener.java index 6a234e275..beabaf860 100644 --- a/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapping/event/PersonBeforeSaveListener.java +++ b/spring-data-mongodb/src/test/java/org/springframework/data/mongodb/core/mapping/event/PersonBeforeSaveListener.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011 by the original author(s). + * Copyright 2011-2015 by the original author(s). * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -16,17 +16,23 @@ package org.springframework.data.mongodb.core.mapping.event; import java.util.ArrayList; +import java.util.List; import org.springframework.context.ApplicationEvent; -import org.springframework.context.ApplicationListener; import org.springframework.data.mongodb.core.mapping.PersonPojoStringId; -public class PersonBeforeSaveListener implements ApplicationListener> { +import com.mongodb.DBObject; - public final ArrayList seenEvents = new ArrayList(); +public class PersonBeforeSaveListener extends AbstractMongoEventListener { - public void onApplicationEvent(BeforeSaveEvent event) { - this.seenEvents.add(event); + public final List seenEvents = new ArrayList(); + + /* + * (non-Javadoc) + * @see org.springframework.data.mongodb.core.mapping.event.AbstractMongoEventListener#onBeforeSave(java.lang.Object, com.mongodb.DBObject) + */ + @Override + public void onBeforeSave(PersonPojoStringId source, DBObject dbo) { + seenEvents.add(new BeforeSaveEvent(source, dbo)); } - }