DATAES-290 - Make joda-time optional dependency.

Original PR: #308 and #213
This commit is contained in:
Peter-Josef Meisch 2019-08-21 18:55:31 +02:00
parent d864ff1292
commit 490347f286
2 changed files with 11 additions and 6 deletions

View File

@ -144,6 +144,7 @@
<groupId>joda-time</groupId> <groupId>joda-time</groupId>
<artifactId>joda-time</artifactId> <artifactId>joda-time</artifactId>
<version>${jodatime}</version> <version>${jodatime}</version>
<optional>true</optional>
</dependency> </dependency>
<!-- Elasticsearch --> <!-- Elasticsearch -->

View File

@ -24,6 +24,7 @@ import org.springframework.data.elasticsearch.core.convert.DateTimeConverters;
import org.springframework.data.elasticsearch.core.query.StringQuery; import org.springframework.data.elasticsearch.core.query.StringQuery;
import org.springframework.data.repository.query.ParametersParameterAccessor; import org.springframework.data.repository.query.ParametersParameterAccessor;
import org.springframework.util.Assert; import org.springframework.util.Assert;
import org.springframework.util.ClassUtils;
import org.springframework.util.NumberUtils; import org.springframework.util.NumberUtils;
/** /**
@ -33,6 +34,7 @@ import org.springframework.util.NumberUtils;
* @author Mohsin Husen * @author Mohsin Husen
* @author Mark Paluch * @author Mark Paluch
* @author Taylor Ono * @author Taylor Ono
* @author Peter-Josef Meisch
*/ */
public class ElasticsearchStringQuery extends AbstractElasticsearchRepositoryQuery { public class ElasticsearchStringQuery extends AbstractElasticsearchRepositoryQuery {
@ -45,6 +47,7 @@ public class ElasticsearchStringQuery extends AbstractElasticsearchRepositoryQue
if (!conversionService.canConvert(java.util.Date.class, String.class)) { if (!conversionService.canConvert(java.util.Date.class, String.class)) {
conversionService.addConverter(DateTimeConverters.JavaDateConverter.INSTANCE); conversionService.addConverter(DateTimeConverters.JavaDateConverter.INSTANCE);
} }
if (ClassUtils.isPresent("org.joda.time.DateTimeZone", ElasticsearchStringQuery.class.getClassLoader())) {
if (!conversionService.canConvert(org.joda.time.ReadableInstant.class, String.class)) { if (!conversionService.canConvert(org.joda.time.ReadableInstant.class, String.class)) {
conversionService.addConverter(DateTimeConverters.JodaDateTimeConverter.INSTANCE); conversionService.addConverter(DateTimeConverters.JodaDateTimeConverter.INSTANCE);
} }
@ -52,6 +55,7 @@ public class ElasticsearchStringQuery extends AbstractElasticsearchRepositoryQue
conversionService.addConverter(DateTimeConverters.JodaLocalDateTimeConverter.INSTANCE); conversionService.addConverter(DateTimeConverters.JodaLocalDateTimeConverter.INSTANCE);
} }
} }
}
public ElasticsearchStringQuery(ElasticsearchQueryMethod queryMethod, ElasticsearchOperations elasticsearchOperations, public ElasticsearchStringQuery(ElasticsearchQueryMethod queryMethod, ElasticsearchOperations elasticsearchOperations,
String query) { String query) {