From d8f43d3297389e7b58dea03d2d380419d3267bdc Mon Sep 17 00:00:00 2001
From: Christoph Strobl
Date: Mon, 10 Dec 2018 14:48:56 +0100
Subject: [PATCH] DATAES-512 - Polishing.
Update Javadoc and Readme to reflect recent back ports.
---
README.md | 73 +++++++++++++++++++
.../client/ClientConfiguration.java | 2 +-
.../client/ClientConfigurationBuilder.java | 2 +-
.../elasticsearch/client/ClientLogger.java | 2 +-
.../client/DefaultClientConfiguration.java | 2 +-
.../client/ElasticsearchHost.java | 2 +-
.../client/InetSocketAddressParser.java | 2 +-
.../client/NoReachableHostException.java | 2 +-
.../elasticsearch/client/RestClients.java | 4 +-
.../DefaultReactiveElasticsearchClient.java | 4 +-
.../reactive/DefaultWebClientProvider.java | 2 +-
.../client/reactive/HostProvider.java | 6 +-
.../reactive/MultiNodeHostProvider.java | 2 +-
.../client/reactive/RawActionResponse.java | 2 +-
.../reactive/ReactiveElasticsearchClient.java | 6 +-
.../client/reactive/ReactiveRestClients.java | 2 +-
.../RequestBodyEncodingException.java | 2 +-
.../reactive/SingleNodeHostProvider.java | 2 +-
.../client/reactive/WebClientProvider.java | 2 +-
.../client/util/RequestConverters.java | 2 +-
.../AbstractElasticsearchConfiguration.java | 2 +-
...actReactiveElasticsearchConfiguration.java | 2 +-
.../ElasticsearchConfigurationSupport.java | 2 +-
.../ElasticsearchExceptionTranslator.java | 2 +-
.../elasticsearch/core/EntityOperations.java | 11 +--
.../core/ReactiveElasticsearchOperations.java | 4 +-
.../core/ReactiveElasticsearchTemplate.java | 2 +-
.../elasticsearch/core/ResultsMapper.java | 4 +-
.../ElasticsearchCustomConversions.java | 2 +-
29 files changed, 114 insertions(+), 40 deletions(-)
diff --git a/README.md b/README.md
index 0a2c0d2e..8061a01d 100644
--- a/README.md
+++ b/README.md
@@ -54,6 +54,7 @@ the appropriate dependency version.
| spring data elasticsearch | elasticsearch |
|:-------------------------:|:-------------:|
+| 3.2.x | 6.5.0 |
| 3.1.x | 6.2.2 |
| 3.0.x | 5.5.0 |
| 2.1.x | 2.4.0 |
@@ -185,6 +186,78 @@ Searching entities using Elasticsearch Template
Page sampleEntities = elasticsearchTemplate.queryForPage(searchQuery,SampleEntity.class);
```
+### Reactive Elasticsearch
+
+The `ReactiveElasticsearchClient` is a non official driver based on `WebClient`.
+It uses the request/response objects provided by the Elasticsearch core project.
+
+```java
+@Configuration
+public class Config {
+
+ @Bean
+ ReactiveElasticsearchClient client() {
+
+ ClientConfiguration clientConfiguration = ClientConfiguration.builder()
+ .connectedTo("localhost:9200", "localhost:9291")
+ .build();
+
+ return ReactiveRestClients.create(clientConfiguration);
+ }
+}
+
+// ...
+
+Mono response = client.index(request ->
+
+ request.index("spring-data")
+ .type("elasticsearch")
+ .id(randomID())
+ .source(singletonMap("feature", "reactive-client"))
+ .setRefreshPolicy(IMMEDIATE)
+);
+```
+
+The reactive client response, especially for search operations, is bound to the `from` (offset) & `size` (limit) options of the request.
+
+`ReactiveElasticsearchOperations` is the gateway to executing high level commands against an Elasticsearch cluster using the `ReactiveElasticsearchClient`.
+The easiest way of setting up the `ReactiveElasticsearchTemplate` is via `AbstractReactiveElasticsearchConfiguration`.
+
+```java
+@Configuration
+public class Config extends AbstractReactiveElasticsearchConfiguration {
+
+ @Bean
+ @Override
+ public ReactiveElasticsearchClient reactiveElasticsearchClient() {
+ // ...
+ }
+}
+```
+
+If needed the `ReactiveElasticsearchTemplate` can be configured with default `RefreshPolicy` and `IndicesOptions` that get applied to the related requests by overriding the defaults of `refreshPolicy()` and `indicesOptions()`.
+
+```java
+template.save(new Person("Bruce Banner", 42))
+ .doOnNext(System.out::println)
+ .flatMap(person -> template.findById(person.id, Person.class))
+ .doOnNext(System.out::println)
+ .flatMap(person -> template.delete(person))
+ .doOnNext(System.out::println)
+ .flatMap(id -> template.count(Person.class))
+ .doOnNext(System.out::println)
+ .subscribe();
+```
+
+The above outputs the following sequence on the console.
+
+```bash
+> Person(id=QjWCWWcBXiLAnp77ksfR, name=Bruce Banner, age=42)
+> Person(id=QjWCWWcBXiLAnp77ksfR, name=Bruce Banner, age=42)
+> QjWCWWcBXiLAnp77ksfR
+> 0
+```
+
### XML Namespace
You can set up repository scanning via xml configuration, which will happily create your repositories.
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/ClientConfiguration.java b/src/main/java/org/springframework/data/elasticsearch/client/ClientConfiguration.java
index 1a78dadf..00845f11 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/ClientConfiguration.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/ClientConfiguration.java
@@ -29,7 +29,7 @@ import org.springframework.http.HttpHeaders;
* Configuration interface exposing common client configuration properties for Elasticsearch clients.
*
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
*/
public interface ClientConfiguration {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/ClientConfigurationBuilder.java b/src/main/java/org/springframework/data/elasticsearch/client/ClientConfigurationBuilder.java
index 7d362d4f..6e39a986 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/ClientConfigurationBuilder.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/ClientConfigurationBuilder.java
@@ -36,7 +36,7 @@ import org.springframework.util.Assert;
*
* @author Christoph Strobl
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
*/
class ClientConfigurationBuilder
implements ClientConfigurationBuilderWithRequiredEndpoint, MaybeSecureClientConfigurationBuilder {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/ClientLogger.java b/src/main/java/org/springframework/data/elasticsearch/client/ClientLogger.java
index 7ac2ba93..9f12731b 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/ClientLogger.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/ClientLogger.java
@@ -29,7 +29,7 @@ import org.springframework.util.ObjectUtils;
*
* @author Mark Paluch
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
public abstract class ClientLogger {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/DefaultClientConfiguration.java b/src/main/java/org/springframework/data/elasticsearch/client/DefaultClientConfiguration.java
index 65393fb2..7ed954c7 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/DefaultClientConfiguration.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/DefaultClientConfiguration.java
@@ -32,7 +32,7 @@ import org.springframework.lang.Nullable;
*
* @author Mark Paluch
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
class DefaultClientConfiguration implements ClientConfiguration {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/ElasticsearchHost.java b/src/main/java/org/springframework/data/elasticsearch/client/ElasticsearchHost.java
index 3e37fe23..e0875370 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/ElasticsearchHost.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/ElasticsearchHost.java
@@ -25,7 +25,7 @@ import org.springframework.util.Assert;
* Value Object containing information about Elasticsearch cluster nodes.
*
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
public class ElasticsearchHost {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/InetSocketAddressParser.java b/src/main/java/org/springframework/data/elasticsearch/client/InetSocketAddressParser.java
index d951de88..b6330cd8 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/InetSocketAddressParser.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/InetSocketAddressParser.java
@@ -24,7 +24,7 @@ import org.springframework.util.StringUtils;
* Utility to parse endpoints in {@code host:port} format into {@link java.net.InetSocketAddress}.
*
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
*/
class InetSocketAddressParser {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/NoReachableHostException.java b/src/main/java/org/springframework/data/elasticsearch/client/NoReachableHostException.java
index f5346b1c..e6e4aa04 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/NoReachableHostException.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/NoReachableHostException.java
@@ -22,7 +22,7 @@ import java.util.Set;
* {@link RuntimeException} to be emitted / thrown when the cluster is down (aka none of the known nodes is reachable).
*
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
public class NoReachableHostException extends RuntimeException {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/RestClients.java b/src/main/java/org/springframework/data/elasticsearch/client/RestClients.java
index 8608c503..d2d3a1f6 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/RestClients.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/RestClients.java
@@ -52,7 +52,7 @@ import org.springframework.util.Assert;
*
* @author Christoph Strobl
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
*/
public final class RestClients {
@@ -157,7 +157,7 @@ public final class RestClients {
* Logging interceptors for Elasticsearch client logging.
*
* @see ClientLogger
- * @since 4.0
+ * @since 3.2
*/
private static class HttpLoggingInterceptor implements HttpResponseInterceptor, HttpRequestInterceptor {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultReactiveElasticsearchClient.java b/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultReactiveElasticsearchClient.java
index f588ac5d..d31df321 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultReactiveElasticsearchClient.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultReactiveElasticsearchClient.java
@@ -110,7 +110,7 @@ import org.springframework.web.reactive.function.client.WebClient.RequestBodySpe
*
* @author Christoph Strobl
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
* @see ClientConfiguration
* @see ReactiveRestClients
*/
@@ -657,7 +657,7 @@ public class DefaultReactiveElasticsearchClient implements ReactiveElasticsearch
* Mutable state object holding scrollId to be used for {@link SearchScrollRequest#scroll(Scroll)}
*
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
private static class ScrollState {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultWebClientProvider.java b/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultWebClientProvider.java
index d20b4dfa..89719b64 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultWebClientProvider.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/reactive/DefaultWebClientProvider.java
@@ -32,7 +32,7 @@ import org.springframework.web.reactive.function.client.WebClient.Builder;
*
* @author Mark Paluch
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
class DefaultWebClientProvider implements WebClientProvider {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/reactive/HostProvider.java b/src/main/java/org/springframework/data/elasticsearch/client/reactive/HostProvider.java
index 54ae0968..b018fcb1 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/reactive/HostProvider.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/reactive/HostProvider.java
@@ -32,7 +32,7 @@ import org.springframework.web.reactive.function.client.WebClient;
*
* @author Christoph Strobl
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
*/
public interface HostProvider {
@@ -113,7 +113,7 @@ public interface HostProvider {
* {@link Verification} allows to influence the lookup strategy for active hosts.
*
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
enum Verification {
@@ -132,7 +132,7 @@ public interface HostProvider {
* Value object accumulating information about an Elasticsearch cluster.
*
* @author Christoph Strobl
- * @since 4.0.
+ * @since 3.2
*/
class ClusterInformation {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/reactive/MultiNodeHostProvider.java b/src/main/java/org/springframework/data/elasticsearch/client/reactive/MultiNodeHostProvider.java
index 86272b4d..99d30f2b 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/reactive/MultiNodeHostProvider.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/reactive/MultiNodeHostProvider.java
@@ -40,7 +40,7 @@ import org.springframework.web.reactive.function.client.WebClient;
*
* @author Christoph Strobl
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
*/
class MultiNodeHostProvider implements HostProvider {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/reactive/RawActionResponse.java b/src/main/java/org/springframework/data/elasticsearch/client/reactive/RawActionResponse.java
index e3e1bb76..961f3876 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/reactive/RawActionResponse.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/reactive/RawActionResponse.java
@@ -35,7 +35,7 @@ import org.springframework.web.reactive.function.client.ExchangeStrategies;
* Extension to {@link ActionResponse} that also implements {@link ClientResponse}.
*
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
class RawActionResponse extends ActionResponse implements ClientResponse {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/reactive/ReactiveElasticsearchClient.java b/src/main/java/org/springframework/data/elasticsearch/client/reactive/ReactiveElasticsearchClient.java
index cfe37a8b..895ff24d 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/reactive/ReactiveElasticsearchClient.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/reactive/ReactiveElasticsearchClient.java
@@ -49,7 +49,7 @@ import org.springframework.web.reactive.function.client.WebClient;
*
* @author Christoph Strobl
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
* @see ClientConfiguration
* @see ReactiveRestClients
*/
@@ -438,7 +438,7 @@ public interface ReactiveElasticsearchClient {
* Low level callback interface operating upon {@link WebClient} to send commands towards elasticsearch.
*
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
interface ReactiveElasticsearchClientCallback {
Mono doWithClient(WebClient client);
@@ -448,7 +448,7 @@ public interface ReactiveElasticsearchClient {
* Cumulative client {@link ElasticsearchHost} information.
*
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
interface Status {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/reactive/ReactiveRestClients.java b/src/main/java/org/springframework/data/elasticsearch/client/reactive/ReactiveRestClients.java
index ab6f4451..c3545bce 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/reactive/ReactiveRestClients.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/reactive/ReactiveRestClients.java
@@ -24,7 +24,7 @@ import org.springframework.util.Assert;
*
* @author Christoph Strobl
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
*/
public final class ReactiveRestClients {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/reactive/RequestBodyEncodingException.java b/src/main/java/org/springframework/data/elasticsearch/client/reactive/RequestBodyEncodingException.java
index c7b77af0..43b6aa78 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/reactive/RequestBodyEncodingException.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/reactive/RequestBodyEncodingException.java
@@ -22,7 +22,7 @@ import org.springframework.web.reactive.function.client.WebClientException;
*
* @author Christoph Strobl
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
*/
public class RequestBodyEncodingException extends WebClientException {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/reactive/SingleNodeHostProvider.java b/src/main/java/org/springframework/data/elasticsearch/client/reactive/SingleNodeHostProvider.java
index 064bf84f..d2e0a729 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/reactive/SingleNodeHostProvider.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/reactive/SingleNodeHostProvider.java
@@ -30,7 +30,7 @@ import org.springframework.web.reactive.function.client.WebClient;
*
* @author Christoph Strobl
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
*/
class SingleNodeHostProvider implements HostProvider {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/reactive/WebClientProvider.java b/src/main/java/org/springframework/data/elasticsearch/client/reactive/WebClientProvider.java
index 375c6c6c..ddec5f2b 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/reactive/WebClientProvider.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/reactive/WebClientProvider.java
@@ -34,7 +34,7 @@ import org.springframework.web.reactive.function.client.WebClient;
*
* @author Christoph Strobl
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
*/
public interface WebClientProvider {
diff --git a/src/main/java/org/springframework/data/elasticsearch/client/util/RequestConverters.java b/src/main/java/org/springframework/data/elasticsearch/client/util/RequestConverters.java
index ccba7e47..cf48a701 100644
--- a/src/main/java/org/springframework/data/elasticsearch/client/util/RequestConverters.java
+++ b/src/main/java/org/springframework/data/elasticsearch/client/util/RequestConverters.java
@@ -87,7 +87,7 @@ import org.springframework.http.HttpMethod;
*
* Modified for usage with {@link ReactiveElasticsearchClient}.
*
- * @since 4.0
+ * @since 3.2
*/
public class RequestConverters {
diff --git a/src/main/java/org/springframework/data/elasticsearch/config/AbstractElasticsearchConfiguration.java b/src/main/java/org/springframework/data/elasticsearch/config/AbstractElasticsearchConfiguration.java
index 90c83270..f029c31a 100644
--- a/src/main/java/org/springframework/data/elasticsearch/config/AbstractElasticsearchConfiguration.java
+++ b/src/main/java/org/springframework/data/elasticsearch/config/AbstractElasticsearchConfiguration.java
@@ -22,7 +22,7 @@ import org.springframework.data.elasticsearch.core.ElasticsearchRestTemplate;
/**
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
* @see ElasticsearchConfigurationSupport
*/
public abstract class AbstractElasticsearchConfiguration extends ElasticsearchConfigurationSupport {
diff --git a/src/main/java/org/springframework/data/elasticsearch/config/AbstractReactiveElasticsearchConfiguration.java b/src/main/java/org/springframework/data/elasticsearch/config/AbstractReactiveElasticsearchConfiguration.java
index 9815c5c4..1f2c239d 100644
--- a/src/main/java/org/springframework/data/elasticsearch/config/AbstractReactiveElasticsearchConfiguration.java
+++ b/src/main/java/org/springframework/data/elasticsearch/config/AbstractReactiveElasticsearchConfiguration.java
@@ -26,7 +26,7 @@ import org.springframework.lang.Nullable;
/**
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
* @see ElasticsearchConfigurationSupport
*/
@Configuration
diff --git a/src/main/java/org/springframework/data/elasticsearch/config/ElasticsearchConfigurationSupport.java b/src/main/java/org/springframework/data/elasticsearch/config/ElasticsearchConfigurationSupport.java
index 64bf4c0c..60479171 100644
--- a/src/main/java/org/springframework/data/elasticsearch/config/ElasticsearchConfigurationSupport.java
+++ b/src/main/java/org/springframework/data/elasticsearch/config/ElasticsearchConfigurationSupport.java
@@ -39,7 +39,7 @@ import org.springframework.util.StringUtils;
/**
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
@Configuration
public class ElasticsearchConfigurationSupport {
diff --git a/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchExceptionTranslator.java b/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchExceptionTranslator.java
index c0fdf4c2..b3c0cb48 100644
--- a/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchExceptionTranslator.java
+++ b/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchExceptionTranslator.java
@@ -25,7 +25,7 @@ import org.springframework.dao.support.PersistenceExceptionTranslator;
/**
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
public class ElasticsearchExceptionTranslator implements PersistenceExceptionTranslator {
diff --git a/src/main/java/org/springframework/data/elasticsearch/core/EntityOperations.java b/src/main/java/org/springframework/data/elasticsearch/core/EntityOperations.java
index 044c16fd..420b2eb3 100644
--- a/src/main/java/org/springframework/data/elasticsearch/core/EntityOperations.java
+++ b/src/main/java/org/springframework/data/elasticsearch/core/EntityOperations.java
@@ -38,7 +38,7 @@ import org.springframework.util.StringUtils;
*
* @author Mark Paluch
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
@RequiredArgsConstructor
class EntityOperations {
@@ -270,7 +270,7 @@ class EntityOperations {
/**
* @param
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
@RequiredArgsConstructor
private static class MapBackedEntity> implements AdaptibleEntity {
@@ -377,7 +377,7 @@ class EntityOperations {
* Plain entity without applying further mapping.
*
* @param
- * @since 4.0
+ * @since 3.2
*/
private static class UnmappedEntity> extends MapBackedEntity {
@@ -390,7 +390,7 @@ class EntityOperations {
* Simple mapped entity without an associated {@link ElasticsearchPersistentEntity}.
*
* @param
- * @since 4.0
+ * @since 3.2
*/
private static class SimpleMappedEntity> extends MapBackedEntity {
@@ -412,6 +412,7 @@ class EntityOperations {
* Mapped entity with an associated {@link ElasticsearchPersistentEntity}.
*
* @param
+ * @since 3.2
*/
@RequiredArgsConstructor(access = AccessLevel.PROTECTED)
private static class MappedEntity implements Entity {
@@ -488,7 +489,7 @@ class EntityOperations {
/**
* @param
- * @since 4.0
+ * @since 3.2
*/
private static class AdaptibleMappedEntity extends MappedEntity implements AdaptibleEntity {
diff --git a/src/main/java/org/springframework/data/elasticsearch/core/ReactiveElasticsearchOperations.java b/src/main/java/org/springframework/data/elasticsearch/core/ReactiveElasticsearchOperations.java
index d1339e75..60a5d831 100644
--- a/src/main/java/org/springframework/data/elasticsearch/core/ReactiveElasticsearchOperations.java
+++ b/src/main/java/org/springframework/data/elasticsearch/core/ReactiveElasticsearchOperations.java
@@ -35,7 +35,7 @@ import org.springframework.util.Assert;
* {@link Publisher}.
*
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
public interface ReactiveElasticsearchOperations {
@@ -450,7 +450,7 @@ public interface ReactiveElasticsearchOperations {
*
* @param
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
interface ClientCallback> {
diff --git a/src/main/java/org/springframework/data/elasticsearch/core/ReactiveElasticsearchTemplate.java b/src/main/java/org/springframework/data/elasticsearch/core/ReactiveElasticsearchTemplate.java
index cf7aadbd..c266f1e8 100644
--- a/src/main/java/org/springframework/data/elasticsearch/core/ReactiveElasticsearchTemplate.java
+++ b/src/main/java/org/springframework/data/elasticsearch/core/ReactiveElasticsearchTemplate.java
@@ -73,7 +73,7 @@ import org.springframework.util.ObjectUtils;
/**
* @author Christoph Strobl
* @author Mark Paluch
- * @since 4.0
+ * @since 3.2
*/
public class ReactiveElasticsearchTemplate implements ReactiveElasticsearchOperations {
diff --git a/src/main/java/org/springframework/data/elasticsearch/core/ResultsMapper.java b/src/main/java/org/springframework/data/elasticsearch/core/ResultsMapper.java
index 58975950..07a14811 100644
--- a/src/main/java/org/springframework/data/elasticsearch/core/ResultsMapper.java
+++ b/src/main/java/org/springframework/data/elasticsearch/core/ResultsMapper.java
@@ -55,7 +55,7 @@ public interface ResultsMapper extends SearchResultMapper, GetResultMapper, Mult
* @param type must not be {@literal null}.
* @param
* @return can be {@literal null} if the {@link GetResult#isSourceEmpty() is empty}.
- * @since 4.0
+ * @since 3.2
*/
@Nullable
default T mapEntity(GetResult getResult, Class type) {
@@ -80,7 +80,7 @@ public interface ResultsMapper extends SearchResultMapper, GetResultMapper, Mult
* @param type must not be {@literal null}.
* @param
* @return can be {@literal null} if the {@link SearchHit} does not have {@link SearchHit#hasSource() a source}.
- * @since 4.0
+ * @since 3.2
*/
@Nullable
default T mapEntity(SearchHit searchHit, Class type) {
diff --git a/src/main/java/org/springframework/data/elasticsearch/core/convert/ElasticsearchCustomConversions.java b/src/main/java/org/springframework/data/elasticsearch/core/convert/ElasticsearchCustomConversions.java
index f5a0faeb..d591f808 100644
--- a/src/main/java/org/springframework/data/elasticsearch/core/convert/ElasticsearchCustomConversions.java
+++ b/src/main/java/org/springframework/data/elasticsearch/core/convert/ElasticsearchCustomConversions.java
@@ -21,7 +21,7 @@ import org.springframework.data.convert.CustomConversions;
/**
* @author Christoph Strobl
- * @since 4.0
+ * @since 3.2
*/
public class ElasticsearchCustomConversions extends CustomConversions {