Commit 45c8eca4 authored by Phillip Webb's avatar Phillip Webb

Add @ConditionalOnMissingBean(MongoDbFactory)

Update MongoAutoConfiguration to be conditional on a missing
MongoDbFactory bean. The assumption is that if the user has declared
a MongoDbFactory they will either use it directly, or they will also
register a Mongo bean.

If the MongoDbFactory class cannot be found the existing Mongo
auto-configuration still applies. This ensures that users that do
not have Spring Data can still access a Mongo bean.

Fixes gh-1341
parent e0c3dd79
...@@ -27,6 +27,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean ...@@ -27,6 +27,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
import org.springframework.boot.context.properties.EnableConfigurationProperties; import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.data.mongodb.MongoDbFactory;
import com.mongodb.Mongo; import com.mongodb.Mongo;
import com.mongodb.MongoClientOptions; import com.mongodb.MongoClientOptions;
...@@ -41,6 +42,7 @@ import com.mongodb.MongoClientOptions; ...@@ -41,6 +42,7 @@ import com.mongodb.MongoClientOptions;
@Configuration @Configuration
@ConditionalOnClass(Mongo.class) @ConditionalOnClass(Mongo.class)
@EnableConfigurationProperties(MongoProperties.class) @EnableConfigurationProperties(MongoProperties.class)
@ConditionalOnMissingBean(MongoDbFactory.class)
public class MongoAutoConfiguration { public class MongoAutoConfiguration {
@Autowired @Autowired
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment