From 727cb5eb0966ef5f5e98b304200ac6b828485c77 Mon Sep 17 00:00:00 2001 From: Kevin Leturc Date: Sun, 28 Dec 2014 21:23:40 +0100 Subject: [PATCH] DATAES-141 - Update ElasticsearchTemplate constructors to init properly the default implementations. --- .../core/ElasticsearchTemplate.java | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchTemplate.java b/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchTemplate.java index cd5288100..20924956c 100755 --- a/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchTemplate.java +++ b/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchTemplate.java @@ -116,26 +116,34 @@ public class ElasticsearchTemplate implements ElasticsearchOperations, Applicati private String searchTimeout; public ElasticsearchTemplate(Client client) { - this(client, null, null); + this(client, new MappingElasticsearchConverter(new SimpleElasticsearchMappingContext())); } public ElasticsearchTemplate(Client client, EntityMapper entityMapper) { - this(client, null, new DefaultResultMapper(entityMapper)); + this(client, new MappingElasticsearchConverter(new SimpleElasticsearchMappingContext()), entityMapper); + } + + public ElasticsearchTemplate(Client client, ElasticsearchConverter elasticsearchConverter, EntityMapper entityMapper) { + this(client, elasticsearchConverter, new DefaultResultMapper(elasticsearchConverter.getMappingContext(), entityMapper)); } public ElasticsearchTemplate(Client client, ResultsMapper resultsMapper) { - this(client, null, resultsMapper); + this(client, new MappingElasticsearchConverter(new SimpleElasticsearchMappingContext()), resultsMapper); } public ElasticsearchTemplate(Client client, ElasticsearchConverter elasticsearchConverter) { - this(client, elasticsearchConverter, null); + this(client, elasticsearchConverter, new DefaultResultMapper(elasticsearchConverter.getMappingContext())); } public ElasticsearchTemplate(Client client, ElasticsearchConverter elasticsearchConverter, ResultsMapper resultsMapper) { + + Assert.notNull(client, "Client must not be null!"); + Assert.notNull(elasticsearchConverter, "ElasticsearchConverter must not be null!"); + Assert.notNull(resultsMapper, "ResultsMapper must not be null!"); + this.client = client; - this.elasticsearchConverter = (elasticsearchConverter == null) ? new MappingElasticsearchConverter( - new SimpleElasticsearchMappingContext()) : elasticsearchConverter; - this.resultsMapper = (resultsMapper == null) ? new DefaultResultMapper(this.elasticsearchConverter.getMappingContext()) : resultsMapper; + this.elasticsearchConverter = elasticsearchConverter; + this.resultsMapper = resultsMapper; } public void setSearchTimeout(String searchTimeout) {