mirror of
https://github.com/spring-projects/spring-data-elasticsearch.git
synced 2025-06-08 13:12:10 +00:00
Move classes using Elasticsearch code to separate package.
Original Pull Request #1991 Closes #1947
This commit is contained in:
parent
3eff80e745
commit
94c95ee4da
@ -0,0 +1,14 @@
|
|||||||
|
[[elasticsearch-migration-guide-4.3-4.4]]
|
||||||
|
= Upgrading from 4.3.x to 4.4.x
|
||||||
|
|
||||||
|
This section describes breaking changes from version 4.3.x to 4.4.x and how removed features can be replaced by new introduced features.
|
||||||
|
|
||||||
|
[[elasticsearch-migration-guide-4.3-4.4.deprecations]]
|
||||||
|
== Deprecations
|
||||||
|
|
||||||
|
[[elasticsearch-migration-guide-4.3-4.4.breaking-changes]]
|
||||||
|
== Breaking Changes
|
||||||
|
|
||||||
|
=== Package changes
|
||||||
|
|
||||||
|
* The package `org.springframework.data.elasticsearch.core.clients.elasticsearch7` has been renamed to `org.springframework.data.elasticsearch.core.backend.elasticsearch7`.
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
@ -34,10 +34,13 @@ import org.elasticsearch.index.query.MoreLikeThisQueryBuilder;
|
|||||||
import org.elasticsearch.index.query.QueryBuilders;
|
import org.elasticsearch.index.query.QueryBuilders;
|
||||||
import org.elasticsearch.search.suggest.SuggestBuilder;
|
import org.elasticsearch.search.suggest.SuggestBuilder;
|
||||||
import org.springframework.data.elasticsearch.BulkFailureException;
|
import org.springframework.data.elasticsearch.BulkFailureException;
|
||||||
import org.springframework.data.elasticsearch.core.document.SearchDocumentResponse;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.document.SearchDocumentResponse;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
|
import org.springframework.data.elasticsearch.core.AbstractElasticsearchTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.core.IndexedObjectInformation;
|
||||||
|
import org.springframework.data.elasticsearch.core.SearchHits;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.MoreLikeThisQuery;
|
import org.springframework.data.elasticsearch.core.query.MoreLikeThisQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
|
||||||
import org.springframework.data.elasticsearch.core.query.Query;
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
import org.springframework.util.Assert;
|
import org.springframework.util.Assert;
|
||||||
|
|
@ -5,7 +5,7 @@
|
|||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
* You may obtain a copy of the License at
|
* You may obtain a copy of the License at
|
||||||
*
|
*
|
||||||
* https://www.apache.org/licenses/LICENSE-2.0
|
* https://www.apache.org/licenses/LICENSE-2.0
|
||||||
*
|
*
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.clients.elasticsearch7;
|
||||||
|
|
||||||
import static org.springframework.data.elasticsearch.core.query.Criteria.*;
|
import static org.springframework.data.elasticsearch.core.query.Criteria.*;
|
||||||
|
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.clients.elasticsearch7;
|
||||||
|
|
||||||
import static org.elasticsearch.index.query.Operator.*;
|
import static org.elasticsearch.index.query.Operator.*;
|
||||||
import static org.elasticsearch.index.query.QueryBuilders.*;
|
import static org.elasticsearch.index.query.QueryBuilders.*;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core.clients.elasticsearch7;
|
package org.springframework.data.elasticsearch.clients.elasticsearch7;
|
||||||
|
|
||||||
import org.elasticsearch.search.aggregations.Aggregation;
|
import org.elasticsearch.search.aggregations.Aggregation;
|
||||||
import org.springframework.data.elasticsearch.core.AggregationContainer;
|
import org.springframework.data.elasticsearch.core.AggregationContainer;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core.clients.elasticsearch7;
|
package org.springframework.data.elasticsearch.clients.elasticsearch7;
|
||||||
|
|
||||||
import org.elasticsearch.search.aggregations.Aggregations;
|
import org.elasticsearch.search.aggregations.Aggregations;
|
||||||
import org.springframework.data.elasticsearch.core.AggregationsContainer;
|
import org.springframework.data.elasticsearch.core.AggregationsContainer;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -45,10 +45,20 @@ import org.elasticsearch.search.fetch.subphase.FetchSourceContext;
|
|||||||
import org.elasticsearch.search.suggest.SuggestBuilder;
|
import org.elasticsearch.search.suggest.SuggestBuilder;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.cluster.ElasticsearchClusterOperations;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.document.DocumentAdapters;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.document.SearchDocumentResponse;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.RequestFactory;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ResponseConverter;
|
||||||
|
import org.springframework.data.elasticsearch.core.AbstractElasticsearchTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.core.IndexOperations;
|
||||||
|
import org.springframework.data.elasticsearch.core.IndexedObjectInformation;
|
||||||
|
import org.springframework.data.elasticsearch.core.MultiGetItem;
|
||||||
|
import org.springframework.data.elasticsearch.core.RefreshPolicy;
|
||||||
|
import org.springframework.data.elasticsearch.core.SearchHits;
|
||||||
|
import org.springframework.data.elasticsearch.core.SearchScrollHits;
|
||||||
import org.springframework.data.elasticsearch.core.cluster.ClusterOperations;
|
import org.springframework.data.elasticsearch.core.cluster.ClusterOperations;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.document.DocumentAdapters;
|
|
||||||
import org.springframework.data.elasticsearch.core.document.SearchDocumentResponse;
|
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.BulkOptions;
|
import org.springframework.data.elasticsearch.core.query.BulkOptions;
|
||||||
import org.springframework.data.elasticsearch.core.query.ByQueryResponse;
|
import org.springframework.data.elasticsearch.core.query.ByQueryResponse;
|
||||||
@ -56,7 +66,6 @@ import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
|||||||
import org.springframework.data.elasticsearch.core.query.Query;
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
|
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.UpdateResponse;
|
import org.springframework.data.elasticsearch.core.query.UpdateResponse;
|
||||||
import org.springframework.data.elasticsearch.support.SearchHitsUtil;
|
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
import org.springframework.util.Assert;
|
import org.springframework.util.Assert;
|
||||||
|
|
||||||
@ -147,7 +156,7 @@ public class ElasticsearchRestTemplate extends AbstractElasticsearchRestTranspor
|
|||||||
// region ClusterOperations
|
// region ClusterOperations
|
||||||
@Override
|
@Override
|
||||||
public ClusterOperations cluster() {
|
public ClusterOperations cluster() {
|
||||||
return ClusterOperations.forTemplate(this);
|
return ElasticsearchClusterOperations.forTemplate(this);
|
||||||
}
|
}
|
||||||
// endregion
|
// endregion
|
||||||
|
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
@ -46,10 +46,20 @@ import org.elasticsearch.index.reindex.UpdateByQueryRequestBuilder;
|
|||||||
import org.elasticsearch.search.suggest.SuggestBuilder;
|
import org.elasticsearch.search.suggest.SuggestBuilder;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.cluster.ElasticsearchClusterOperations;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.document.DocumentAdapters;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.document.SearchDocumentResponse;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.RequestFactory;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ResponseConverter;
|
||||||
|
import org.springframework.data.elasticsearch.core.AbstractElasticsearchTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.core.IndexOperations;
|
||||||
|
import org.springframework.data.elasticsearch.core.IndexedObjectInformation;
|
||||||
|
import org.springframework.data.elasticsearch.core.MultiGetItem;
|
||||||
|
import org.springframework.data.elasticsearch.core.RefreshPolicy;
|
||||||
|
import org.springframework.data.elasticsearch.core.SearchHits;
|
||||||
|
import org.springframework.data.elasticsearch.core.SearchScrollHits;
|
||||||
import org.springframework.data.elasticsearch.core.cluster.ClusterOperations;
|
import org.springframework.data.elasticsearch.core.cluster.ClusterOperations;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.document.DocumentAdapters;
|
|
||||||
import org.springframework.data.elasticsearch.core.document.SearchDocumentResponse;
|
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.BulkOptions;
|
import org.springframework.data.elasticsearch.core.query.BulkOptions;
|
||||||
import org.springframework.data.elasticsearch.core.query.ByQueryResponse;
|
import org.springframework.data.elasticsearch.core.query.ByQueryResponse;
|
||||||
@ -57,7 +67,6 @@ import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
|||||||
import org.springframework.data.elasticsearch.core.query.Query;
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
|
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.UpdateResponse;
|
import org.springframework.data.elasticsearch.core.query.UpdateResponse;
|
||||||
import org.springframework.data.elasticsearch.support.SearchHitsUtil;
|
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
import org.springframework.util.Assert;
|
import org.springframework.util.Assert;
|
||||||
|
|
||||||
@ -151,7 +160,7 @@ public class ElasticsearchTemplate extends AbstractElasticsearchRestTransportTem
|
|||||||
// region ClusterOperations
|
// region ClusterOperations
|
||||||
@Override
|
@Override
|
||||||
public ClusterOperations cluster() {
|
public ClusterOperations cluster() {
|
||||||
return ClusterOperations.forTemplate(this);
|
return ElasticsearchClusterOperations.forTemplate(this);
|
||||||
}
|
}
|
||||||
// endregion
|
// endregion
|
||||||
|
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7;
|
||||||
|
|
||||||
import reactor.core.publisher.Flux;
|
import reactor.core.publisher.Flux;
|
||||||
import reactor.core.publisher.Mono;
|
import reactor.core.publisher.Mono;
|
||||||
@ -56,17 +56,21 @@ import org.springframework.data.convert.EntityReader;
|
|||||||
import org.springframework.data.elasticsearch.BulkFailureException;
|
import org.springframework.data.elasticsearch.BulkFailureException;
|
||||||
import org.springframework.data.elasticsearch.NoSuchIndexException;
|
import org.springframework.data.elasticsearch.NoSuchIndexException;
|
||||||
import org.springframework.data.elasticsearch.UncategorizedElasticsearchException;
|
import org.springframework.data.elasticsearch.UncategorizedElasticsearchException;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.cluster.DefaultReactiveClusterOperations;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.document.DocumentAdapters;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.document.SearchDocumentResponse;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ElasticsearchAggregation;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.RequestFactory;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ResponseConverter;
|
||||||
|
import org.springframework.data.elasticsearch.core.*;
|
||||||
import org.springframework.data.elasticsearch.core.EntityOperations.AdaptibleEntity;
|
import org.springframework.data.elasticsearch.core.EntityOperations.AdaptibleEntity;
|
||||||
import org.springframework.data.elasticsearch.core.clients.elasticsearch7.ElasticsearchAggregation;
|
|
||||||
import org.springframework.data.elasticsearch.core.cluster.DefaultReactiveClusterOperations;
|
|
||||||
import org.springframework.data.elasticsearch.core.cluster.ReactiveClusterOperations;
|
import org.springframework.data.elasticsearch.core.cluster.ReactiveClusterOperations;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.convert.MappingElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.MappingElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
import org.springframework.data.elasticsearch.core.document.DocumentAdapters;
|
|
||||||
import org.springframework.data.elasticsearch.core.document.SearchDocument;
|
import org.springframework.data.elasticsearch.core.document.SearchDocument;
|
||||||
import org.springframework.data.elasticsearch.core.document.SearchDocumentResponse;
|
|
||||||
import org.springframework.data.elasticsearch.core.event.ReactiveAfterConvertCallback;
|
import org.springframework.data.elasticsearch.core.event.ReactiveAfterConvertCallback;
|
||||||
import org.springframework.data.elasticsearch.core.event.ReactiveAfterSaveCallback;
|
import org.springframework.data.elasticsearch.core.event.ReactiveAfterSaveCallback;
|
||||||
import org.springframework.data.elasticsearch.core.event.ReactiveBeforeConvertCallback;
|
import org.springframework.data.elasticsearch.core.event.ReactiveBeforeConvertCallback;
|
||||||
@ -77,7 +81,6 @@ import org.springframework.data.elasticsearch.core.mapping.SimpleElasticsearchMa
|
|||||||
import org.springframework.data.elasticsearch.core.query.BulkOptions;
|
import org.springframework.data.elasticsearch.core.query.BulkOptions;
|
||||||
import org.springframework.data.elasticsearch.core.query.ByQueryResponse;
|
import org.springframework.data.elasticsearch.core.query.ByQueryResponse;
|
||||||
import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
|
||||||
import org.springframework.data.elasticsearch.core.query.Query;
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
import org.springframework.data.elasticsearch.core.query.SeqNoPrimaryTerm;
|
import org.springframework.data.elasticsearch.core.query.SeqNoPrimaryTerm;
|
||||||
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
|
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7;
|
||||||
|
|
||||||
import static org.elasticsearch.client.Requests.*;
|
import static org.elasticsearch.client.Requests.*;
|
||||||
import static org.springframework.util.StringUtils.*;
|
import static org.springframework.util.StringUtils.*;
|
||||||
@ -42,6 +42,12 @@ import org.springframework.core.annotation.AnnotatedElementUtils;
|
|||||||
import org.springframework.dao.InvalidDataAccessApiUsageException;
|
import org.springframework.dao.InvalidDataAccessApiUsageException;
|
||||||
import org.springframework.data.elasticsearch.NoSuchIndexException;
|
import org.springframework.data.elasticsearch.NoSuchIndexException;
|
||||||
import org.springframework.data.elasticsearch.annotations.Mapping;
|
import org.springframework.data.elasticsearch.annotations.Mapping;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.RequestFactory;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ResponseConverter;
|
||||||
|
import org.springframework.data.elasticsearch.core.IndexInformation;
|
||||||
|
import org.springframework.data.elasticsearch.core.ReactiveElasticsearchOperations;
|
||||||
|
import org.springframework.data.elasticsearch.core.ReactiveIndexOperations;
|
||||||
|
import org.springframework.data.elasticsearch.core.ReactiveResourceUtil;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasActions;
|
import org.springframework.data.elasticsearch.core.index.AliasActions;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.clients.elasticsearch7;
|
||||||
|
|
||||||
import static org.elasticsearch.index.query.QueryBuilders.*;
|
import static org.elasticsearch.index.query.QueryBuilders.*;
|
||||||
import static org.springframework.util.CollectionUtils.*;
|
import static org.springframework.util.CollectionUtils.*;
|
||||||
@ -97,6 +97,11 @@ import org.elasticsearch.search.sort.SortOrder;
|
|||||||
import org.elasticsearch.search.suggest.SuggestBuilder;
|
import org.elasticsearch.search.suggest.SuggestBuilder;
|
||||||
import org.springframework.dao.InvalidDataAccessApiUsageException;
|
import org.springframework.dao.InvalidDataAccessApiUsageException;
|
||||||
import org.springframework.data.domain.Sort;
|
import org.springframework.data.domain.Sort;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.HighlightQueryBuilder;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQuery;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.ScriptField;
|
||||||
|
import org.springframework.data.elasticsearch.core.RefreshPolicy;
|
||||||
|
import org.springframework.data.elasticsearch.core.ScriptType;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasAction;
|
import org.springframework.data.elasticsearch.core.index.AliasAction;
|
||||||
@ -127,10 +132,11 @@ import org.springframework.util.StringUtils;
|
|||||||
* @author Peer Mueller
|
* @author Peer Mueller
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
*/
|
*/
|
||||||
class RequestFactory {
|
// todo make package private again after refactoring
|
||||||
|
public class RequestFactory {
|
||||||
|
|
||||||
// the default max result window size of Elasticsearch
|
// the default max result window size of Elasticsearch
|
||||||
static final Integer INDEX_MAX_RESULT_WINDOW = 10_000;
|
public static final Integer INDEX_MAX_RESULT_WINDOW = 10_000;
|
||||||
|
|
||||||
private final ElasticsearchConverter elasticsearchConverter;
|
private final ElasticsearchConverter elasticsearchConverter;
|
||||||
|
|
@ -14,7 +14,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.clients.elasticsearch7;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
@ -40,6 +40,8 @@ import org.elasticsearch.common.collect.ImmutableOpenMap;
|
|||||||
import org.elasticsearch.common.compress.CompressedXContent;
|
import org.elasticsearch.common.compress.CompressedXContent;
|
||||||
import org.elasticsearch.index.reindex.BulkByScrollResponse;
|
import org.elasticsearch.index.reindex.BulkByScrollResponse;
|
||||||
import org.elasticsearch.index.reindex.ScrollableHitSource;
|
import org.elasticsearch.index.reindex.ScrollableHitSource;
|
||||||
|
import org.springframework.data.elasticsearch.core.IndexInformation;
|
||||||
|
import org.springframework.data.elasticsearch.core.MultiGetItem;
|
||||||
import org.springframework.data.elasticsearch.core.cluster.ClusterHealth;
|
import org.springframework.data.elasticsearch.core.cluster.ClusterHealth;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasData;
|
import org.springframework.data.elasticsearch.core.index.AliasData;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -40,6 +40,10 @@ import org.elasticsearch.client.indices.PutMappingRequest;
|
|||||||
import org.elasticsearch.cluster.metadata.MappingMetadata;
|
import org.elasticsearch.cluster.metadata.MappingMetadata;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ResponseConverter;
|
||||||
|
import org.springframework.data.elasticsearch.core.AbstractIndexTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.core.IndexInformation;
|
||||||
|
import org.springframework.data.elasticsearch.core.IndexOperations;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasActions;
|
import org.springframework.data.elasticsearch.core.index.AliasActions;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasData;
|
import org.springframework.data.elasticsearch.core.index.AliasData;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.support;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7;
|
||||||
|
|
||||||
import org.elasticsearch.search.SearchHits;
|
import org.elasticsearch.search.SearchHits;
|
||||||
|
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7;
|
||||||
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
@ -47,6 +47,10 @@ import org.elasticsearch.common.collect.ImmutableOpenMap;
|
|||||||
import org.elasticsearch.common.compress.CompressedXContent;
|
import org.elasticsearch.common.compress.CompressedXContent;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ResponseConverter;
|
||||||
|
import org.springframework.data.elasticsearch.core.AbstractIndexTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.core.IndexInformation;
|
||||||
|
import org.springframework.data.elasticsearch.core.IndexOperations;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasActions;
|
import org.springframework.data.elasticsearch.core.index.AliasActions;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client;
|
||||||
|
|
||||||
import java.net.InetAddress;
|
import java.net.InetAddress;
|
||||||
import java.net.UnknownHostException;
|
import java.net.UnknownHostException;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client;
|
||||||
|
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client;
|
||||||
|
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.Closeable;
|
import java.io.Closeable;
|
||||||
@ -43,6 +43,8 @@ import org.apache.http.protocol.HttpContext;
|
|||||||
import org.elasticsearch.client.RestClient;
|
import org.elasticsearch.client.RestClient;
|
||||||
import org.elasticsearch.client.RestClientBuilder;
|
import org.elasticsearch.client.RestClientBuilder;
|
||||||
import org.elasticsearch.client.RestHighLevelClient;
|
import org.elasticsearch.client.RestHighLevelClient;
|
||||||
|
import org.springframework.data.elasticsearch.client.ClientConfiguration;
|
||||||
|
import org.springframework.data.elasticsearch.client.ClientLogger;
|
||||||
import org.springframework.http.HttpHeaders;
|
import org.springframework.http.HttpHeaders;
|
||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
import org.springframework.util.Assert;
|
import org.springframework.util.Assert;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client;
|
||||||
|
|
||||||
import java.util.Properties;
|
import java.util.Properties;
|
||||||
|
|
@ -0,0 +1,3 @@
|
|||||||
|
@org.springframework.lang.NonNullApi
|
||||||
|
@org.springframework.lang.NonNullFields
|
||||||
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client.reactive;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive;
|
||||||
|
|
||||||
import io.netty.channel.ChannelOption;
|
import io.netty.channel.ChannelOption;
|
||||||
import io.netty.handler.ssl.ApplicationProtocolConfig;
|
import io.netty.handler.ssl.ApplicationProtocolConfig;
|
||||||
@ -103,16 +103,20 @@ import org.elasticsearch.search.suggest.Suggest;
|
|||||||
import org.reactivestreams.Publisher;
|
import org.reactivestreams.Publisher;
|
||||||
import org.springframework.data.elasticsearch.RestStatusException;
|
import org.springframework.data.elasticsearch.RestStatusException;
|
||||||
import org.springframework.data.elasticsearch.UncategorizedElasticsearchException;
|
import org.springframework.data.elasticsearch.UncategorizedElasticsearchException;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient.Cluster;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient.Indices;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.util.NamedXContents;
|
||||||
import org.springframework.data.elasticsearch.client.ClientConfiguration;
|
import org.springframework.data.elasticsearch.client.ClientConfiguration;
|
||||||
import org.springframework.data.elasticsearch.client.ClientLogger;
|
import org.springframework.data.elasticsearch.client.ClientLogger;
|
||||||
import org.springframework.data.elasticsearch.client.ElasticsearchHost;
|
import org.springframework.data.elasticsearch.client.ElasticsearchHost;
|
||||||
import org.springframework.data.elasticsearch.client.NoReachableHostException;
|
import org.springframework.data.elasticsearch.client.NoReachableHostException;
|
||||||
|
import org.springframework.data.elasticsearch.client.reactive.HostProvider;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.HostProvider.Verification;
|
import org.springframework.data.elasticsearch.client.reactive.HostProvider.Verification;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient.Cluster;
|
import org.springframework.data.elasticsearch.client.reactive.ReactiveRestClients;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient.Indices;
|
import org.springframework.data.elasticsearch.client.reactive.RequestBodyEncodingException;
|
||||||
import org.springframework.data.elasticsearch.client.util.NamedXContents;
|
import org.springframework.data.elasticsearch.client.reactive.WebClientProvider;
|
||||||
import org.springframework.data.elasticsearch.client.util.ScrollState;
|
import org.springframework.data.elasticsearch.client.util.ScrollState;
|
||||||
import org.springframework.data.elasticsearch.core.ResponseConverter;
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ResponseConverter;
|
||||||
import org.springframework.data.elasticsearch.core.query.ByQueryResponse;
|
import org.springframework.data.elasticsearch.core.query.ByQueryResponse;
|
||||||
import org.springframework.data.util.Lazy;
|
import org.springframework.data.util.Lazy;
|
||||||
import org.springframework.http.HttpHeaders;
|
import org.springframework.http.HttpHeaders;
|
||||||
@ -147,6 +151,7 @@ import org.springframework.web.reactive.function.client.WebClient.RequestBodySpe
|
|||||||
* @see ClientConfiguration
|
* @see ClientConfiguration
|
||||||
* @see ReactiveRestClients
|
* @see ReactiveRestClients
|
||||||
*/
|
*/
|
||||||
|
// todo package private after refactoring
|
||||||
public class DefaultReactiveElasticsearchClient implements ReactiveElasticsearchClient, Indices, Cluster {
|
public class DefaultReactiveElasticsearchClient implements ReactiveElasticsearchClient, Indices, Cluster {
|
||||||
|
|
||||||
private final HostProvider<?> hostProvider;
|
private final HostProvider<?> hostProvider;
|
||||||
@ -971,7 +976,7 @@ public class DefaultReactiveElasticsearchClient implements ReactiveElasticsearch
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* (non-Javadoc)
|
* (non-Javadoc)
|
||||||
* @see org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient.Status#hosts()
|
* @see org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient.Status#hosts()
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public Collection<ElasticsearchHost> hosts() {
|
public Collection<ElasticsearchHost> hosts() {
|
@ -0,0 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2021 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.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* https://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Roman Puchkovskiy
|
||||||
|
* @since 4.0
|
||||||
|
*/
|
||||||
|
class DefaultRequestCreator implements RequestCreator {}
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client.reactive;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive;
|
||||||
|
|
||||||
import reactor.core.publisher.Mono;
|
import reactor.core.publisher.Mono;
|
||||||
|
|
||||||
@ -21,7 +21,6 @@ import java.io.IOException;
|
|||||||
|
|
||||||
import org.elasticsearch.action.ActionResponse;
|
import org.elasticsearch.action.ActionResponse;
|
||||||
import org.elasticsearch.common.io.stream.StreamOutput;
|
import org.elasticsearch.common.io.stream.StreamOutput;
|
||||||
|
|
||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
import org.springframework.http.client.reactive.ClientHttpResponse;
|
import org.springframework.http.client.reactive.ClientHttpResponse;
|
||||||
import org.springframework.web.reactive.function.BodyExtractor;
|
import org.springframework.web.reactive.function.BodyExtractor;
|
||||||
@ -35,7 +34,8 @@ import org.springframework.web.reactive.function.client.ClientResponse;
|
|||||||
* @author Mark Paluch
|
* @author Mark Paluch
|
||||||
* @since 3.2
|
* @since 3.2
|
||||||
*/
|
*/
|
||||||
class RawActionResponse extends ActionResponse {
|
// todo make package private again after refactoring?
|
||||||
|
public class RawActionResponse extends ActionResponse {
|
||||||
|
|
||||||
private final ClientResponse delegate;
|
private final ClientResponse delegate;
|
||||||
|
|
||||||
@ -43,7 +43,7 @@ class RawActionResponse extends ActionResponse {
|
|||||||
this.delegate = delegate;
|
this.delegate = delegate;
|
||||||
}
|
}
|
||||||
|
|
||||||
static RawActionResponse create(ClientResponse response) {
|
public static RawActionResponse create(ClientResponse response) {
|
||||||
return new RawActionResponse(response);
|
return new RawActionResponse(response);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -72,8 +72,7 @@ class RawActionResponse extends ActionResponse {
|
|||||||
* until Elasticsearch 7.4 this empty implementation was available in the abstract base class
|
* until Elasticsearch 7.4 this empty implementation was available in the abstract base class
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void writeTo(StreamOutput out) throws IOException {
|
public void writeTo(StreamOutput out) throws IOException {}
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Ensure the response body is released to properly release the underlying connection.
|
* Ensure the response body is released to properly release the underlying connection.
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client.reactive;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive;
|
||||||
|
|
||||||
import reactor.core.publisher.Flux;
|
import reactor.core.publisher.Flux;
|
||||||
import reactor.core.publisher.Mono;
|
import reactor.core.publisher.Mono;
|
||||||
@ -60,6 +60,7 @@ import org.elasticsearch.search.aggregations.Aggregation;
|
|||||||
import org.elasticsearch.search.suggest.Suggest;
|
import org.elasticsearch.search.suggest.Suggest;
|
||||||
import org.springframework.data.elasticsearch.client.ClientConfiguration;
|
import org.springframework.data.elasticsearch.client.ClientConfiguration;
|
||||||
import org.springframework.data.elasticsearch.client.ElasticsearchHost;
|
import org.springframework.data.elasticsearch.client.ElasticsearchHost;
|
||||||
|
import org.springframework.data.elasticsearch.client.reactive.ReactiveRestClients;
|
||||||
import org.springframework.data.elasticsearch.core.query.ByQueryResponse;
|
import org.springframework.data.elasticsearch.core.query.ByQueryResponse;
|
||||||
import org.springframework.http.HttpHeaders;
|
import org.springframework.http.HttpHeaders;
|
||||||
import org.springframework.util.Assert;
|
import org.springframework.util.Assert;
|
@ -1,4 +1,19 @@
|
|||||||
package org.springframework.data.elasticsearch.client.reactive;
|
/*
|
||||||
|
* Copyright 2021 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.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* https://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
@ -37,7 +52,7 @@ import org.elasticsearch.index.reindex.DeleteByQueryRequest;
|
|||||||
import org.elasticsearch.index.reindex.UpdateByQueryRequest;
|
import org.elasticsearch.index.reindex.UpdateByQueryRequest;
|
||||||
import org.elasticsearch.script.mustache.SearchTemplateRequest;
|
import org.elasticsearch.script.mustache.SearchTemplateRequest;
|
||||||
import org.springframework.data.elasticsearch.UncategorizedElasticsearchException;
|
import org.springframework.data.elasticsearch.UncategorizedElasticsearchException;
|
||||||
import org.springframework.data.elasticsearch.client.util.RequestConverters;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.util.RequestConverters;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Roman Puchkovskiy
|
* @author Roman Puchkovskiy
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client.util;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.util;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -78,7 +78,7 @@ import org.elasticsearch.search.suggest.phrase.PhraseSuggestion;
|
|||||||
import org.elasticsearch.search.suggest.phrase.PhraseSuggestionBuilder;
|
import org.elasticsearch.search.suggest.phrase.PhraseSuggestionBuilder;
|
||||||
import org.elasticsearch.search.suggest.term.TermSuggestion;
|
import org.elasticsearch.search.suggest.term.TermSuggestion;
|
||||||
import org.elasticsearch.search.suggest.term.TermSuggestionBuilder;
|
import org.elasticsearch.search.suggest.term.TermSuggestionBuilder;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client.util;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.util;
|
||||||
|
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@ -101,7 +101,7 @@ import org.elasticsearch.index.seqno.SequenceNumbers;
|
|||||||
import org.elasticsearch.script.mustache.SearchTemplateRequest;
|
import org.elasticsearch.script.mustache.SearchTemplateRequest;
|
||||||
import org.elasticsearch.search.fetch.subphase.FetchSourceContext;
|
import org.elasticsearch.search.fetch.subphase.FetchSourceContext;
|
||||||
import org.elasticsearch.tasks.TaskId;
|
import org.elasticsearch.tasks.TaskId;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient;
|
||||||
import org.springframework.http.HttpMethod;
|
import org.springframework.http.HttpMethod;
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
|
|
@ -13,13 +13,15 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core.cluster;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.cluster;
|
||||||
|
|
||||||
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
|
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
|
||||||
import org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse;
|
import org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse;
|
||||||
import org.elasticsearch.client.RequestOptions;
|
import org.elasticsearch.client.RequestOptions;
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchRestTemplate;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchRestTemplate;
|
||||||
import org.springframework.data.elasticsearch.core.ResponseConverter;
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ResponseConverter;
|
||||||
|
import org.springframework.data.elasticsearch.core.cluster.ClusterHealth;
|
||||||
|
import org.springframework.data.elasticsearch.core.cluster.ClusterOperations;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Default implementation of {@link ClusterOperations} using the {@link ElasticsearchRestTemplate}.
|
* Default implementation of {@link ClusterOperations} using the {@link ElasticsearchRestTemplate}.
|
@ -13,13 +13,15 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core.cluster;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.cluster;
|
||||||
|
|
||||||
import reactor.core.publisher.Mono;
|
import reactor.core.publisher.Mono;
|
||||||
|
|
||||||
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
|
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ResponseConverter;
|
||||||
import org.springframework.data.elasticsearch.core.ReactiveElasticsearchOperations;
|
import org.springframework.data.elasticsearch.core.ReactiveElasticsearchOperations;
|
||||||
import org.springframework.data.elasticsearch.core.ResponseConverter;
|
import org.springframework.data.elasticsearch.core.cluster.ClusterHealth;
|
||||||
|
import org.springframework.data.elasticsearch.core.cluster.ReactiveClusterOperations;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Default implementation of {@link ReactiveClusterOperations} using the {@link ReactiveElasticsearchOperations}.
|
* Default implementation of {@link ReactiveClusterOperations} using the {@link ReactiveElasticsearchOperations}.
|
@ -13,12 +13,14 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core.cluster;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.cluster;
|
||||||
|
|
||||||
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
|
import org.elasticsearch.action.admin.cluster.health.ClusterHealthRequest;
|
||||||
import org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse;
|
import org.elasticsearch.action.admin.cluster.health.ClusterHealthResponse;
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchTemplate;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchTemplate;
|
||||||
import org.springframework.data.elasticsearch.core.ResponseConverter;
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ResponseConverter;
|
||||||
|
import org.springframework.data.elasticsearch.core.cluster.ClusterHealth;
|
||||||
|
import org.springframework.data.elasticsearch.core.cluster.ClusterOperations;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Default implementation of {@link ClusterOperations} using the
|
* Default implementation of {@link ClusterOperations} using the
|
@ -0,0 +1,54 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2021 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.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* https://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.cluster;
|
||||||
|
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchRestTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.core.cluster.ClusterOperations;
|
||||||
|
import org.springframework.util.Assert;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Peter-Josef Meisch
|
||||||
|
* @since 4.3
|
||||||
|
*/
|
||||||
|
public class ElasticsearchClusterOperations {
|
||||||
|
/**
|
||||||
|
* Creates a ClusterOperations for a {@link ElasticsearchRestTemplate}.
|
||||||
|
*
|
||||||
|
* @param template the template, must not be {@literal null}
|
||||||
|
* @return ClusterOperations
|
||||||
|
*/
|
||||||
|
public static ClusterOperations forTemplate(ElasticsearchRestTemplate template) {
|
||||||
|
|
||||||
|
Assert.notNull(template, "template must not be null");
|
||||||
|
|
||||||
|
return new DefaultClusterOperations(template);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Creates a ClusterOperations for a {@link ElasticsearchTemplate}.
|
||||||
|
*
|
||||||
|
* @param template the template, must not be {@literal null}
|
||||||
|
* @return ClusterOperations
|
||||||
|
*/
|
||||||
|
public static ClusterOperations forTemplate(ElasticsearchTemplate template) {
|
||||||
|
|
||||||
|
Assert.notNull(template, "template must not be null");
|
||||||
|
|
||||||
|
return new DefaultTransportClusterOperations(template);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,6 @@
|
|||||||
|
/**
|
||||||
|
* Interfaces and classes related to Elasticsearch cluster information and management.
|
||||||
|
*/
|
||||||
|
@org.springframework.lang.NonNullApi
|
||||||
|
@org.springframework.lang.NonNullFields
|
||||||
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.cluster;
|
@ -13,12 +13,13 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.config;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.config;
|
||||||
|
|
||||||
import org.elasticsearch.client.RestHighLevelClient;
|
import org.elasticsearch.client.RestHighLevelClient;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchRestTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.config.ElasticsearchConfigurationSupport;
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
|
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchRestTemplate;
|
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
|
|
||||||
/**
|
/**
|
@ -13,13 +13,14 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.config;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.config;
|
||||||
|
|
||||||
import org.elasticsearch.action.support.IndicesOptions;
|
import org.elasticsearch.action.support.IndicesOptions;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ReactiveElasticsearchTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient;
|
||||||
|
import org.springframework.data.elasticsearch.config.ElasticsearchConfigurationSupport;
|
||||||
import org.springframework.data.elasticsearch.core.ReactiveElasticsearchOperations;
|
import org.springframework.data.elasticsearch.core.ReactiveElasticsearchOperations;
|
||||||
import org.springframework.data.elasticsearch.core.ReactiveElasticsearchTemplate;
|
|
||||||
import org.springframework.data.elasticsearch.core.RefreshPolicy;
|
import org.springframework.data.elasticsearch.core.RefreshPolicy;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core.document;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.document;
|
||||||
|
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@ -39,8 +39,12 @@ import org.elasticsearch.common.text.Text;
|
|||||||
import org.elasticsearch.index.get.GetResult;
|
import org.elasticsearch.index.get.GetResult;
|
||||||
import org.elasticsearch.search.SearchHit;
|
import org.elasticsearch.search.SearchHit;
|
||||||
import org.elasticsearch.search.SearchHits;
|
import org.elasticsearch.search.SearchHits;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ResponseConverter;
|
||||||
import org.springframework.data.elasticsearch.core.MultiGetItem;
|
import org.springframework.data.elasticsearch.core.MultiGetItem;
|
||||||
import org.springframework.data.elasticsearch.core.ResponseConverter;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
|
import org.springframework.data.elasticsearch.core.document.Explanation;
|
||||||
|
import org.springframework.data.elasticsearch.core.document.NestedMetaData;
|
||||||
|
import org.springframework.data.elasticsearch.core.document.SearchDocument;
|
||||||
import org.springframework.data.mapping.MappingException;
|
import org.springframework.data.mapping.MappingException;
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
import org.springframework.util.Assert;
|
import org.springframework.util.Assert;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core.document;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.document;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -25,8 +25,9 @@ import org.elasticsearch.common.text.Text;
|
|||||||
import org.elasticsearch.search.SearchHit;
|
import org.elasticsearch.search.SearchHit;
|
||||||
import org.elasticsearch.search.SearchHits;
|
import org.elasticsearch.search.SearchHits;
|
||||||
import org.elasticsearch.search.aggregations.Aggregations;
|
import org.elasticsearch.search.aggregations.Aggregations;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ElasticsearchAggregations;
|
||||||
import org.springframework.data.elasticsearch.core.AggregationsContainer;
|
import org.springframework.data.elasticsearch.core.AggregationsContainer;
|
||||||
import org.springframework.data.elasticsearch.core.clients.elasticsearch7.ElasticsearchAggregations;
|
import org.springframework.data.elasticsearch.core.document.SearchDocument;
|
||||||
import org.springframework.data.elasticsearch.core.suggest.response.CompletionSuggestion;
|
import org.springframework.data.elasticsearch.core.suggest.response.CompletionSuggestion;
|
||||||
import org.springframework.data.elasticsearch.core.suggest.response.PhraseSuggestion;
|
import org.springframework.data.elasticsearch.core.suggest.response.PhraseSuggestion;
|
||||||
import org.springframework.data.elasticsearch.core.suggest.response.SortBy;
|
import org.springframework.data.elasticsearch.core.suggest.response.SortBy;
|
@ -0,0 +1,22 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2021 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.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* https://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Classes and interfaces used by the code that uses Elasticsearch 7 client libraries
|
||||||
|
*/
|
||||||
|
@org.springframework.lang.NonNullApi
|
||||||
|
@org.springframework.lang.NonNullFields
|
||||||
|
package org.springframework.data.elasticsearch.clients.elasticsearch7;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core.query;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.query;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core.query;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.query;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
@ -27,6 +27,8 @@ import org.elasticsearch.search.collapse.CollapseBuilder;
|
|||||||
import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder;
|
import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder;
|
||||||
import org.elasticsearch.search.sort.SortBuilder;
|
import org.elasticsearch.search.sort.SortBuilder;
|
||||||
import org.elasticsearch.search.suggest.SuggestBuilder;
|
import org.elasticsearch.search.suggest.SuggestBuilder;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.BaseQuery;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.IndexBoost;
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
|
|
||||||
/**
|
/**
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core.query;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.query;
|
||||||
|
|
||||||
import static org.springframework.util.CollectionUtils.*;
|
import static org.springframework.util.CollectionUtils.*;
|
||||||
|
|
||||||
@ -33,6 +33,11 @@ import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder;
|
|||||||
import org.elasticsearch.search.sort.SortBuilder;
|
import org.elasticsearch.search.sort.SortBuilder;
|
||||||
import org.elasticsearch.search.suggest.SuggestBuilder;
|
import org.elasticsearch.search.suggest.SuggestBuilder;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.IndexBoost;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.IndicesOptions;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.RescorerQuery;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.SourceFilter;
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
|
|
||||||
/**
|
/**
|
@ -0,0 +1,41 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2021 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.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* https://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.query;
|
||||||
|
|
||||||
|
import org.elasticsearch.script.Script;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Ryan Murfitt
|
||||||
|
* @author Artur Konczak
|
||||||
|
*/
|
||||||
|
public class ScriptField {
|
||||||
|
|
||||||
|
private final String fieldName;
|
||||||
|
private final Script script;
|
||||||
|
|
||||||
|
public ScriptField(String fieldName, Script script) {
|
||||||
|
this.fieldName = fieldName;
|
||||||
|
this.script = script;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String fieldName() {
|
||||||
|
return fieldName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Script script() {
|
||||||
|
return script;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,23 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2021 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.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* https://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This is the base package for the code that uses backend specific classes and libraries, for example Elasticsearch 7
|
||||||
|
* or OpenSearch.
|
||||||
|
*/
|
||||||
|
@org.springframework.lang.NonNullApi
|
||||||
|
@org.springframework.lang.NonNullFields
|
||||||
|
package org.springframework.data.elasticsearch.backend;
|
@ -27,6 +27,7 @@ import javax.net.ssl.HostnameVerifier;
|
|||||||
import javax.net.ssl.SSLContext;
|
import javax.net.ssl.SSLContext;
|
||||||
|
|
||||||
import org.elasticsearch.client.RestClientBuilder.HttpClientConfigCallback;
|
import org.elasticsearch.client.RestClientBuilder.HttpClientConfigCallback;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.RestClients;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveRestClients;
|
import org.springframework.data.elasticsearch.client.reactive.ReactiveRestClients;
|
||||||
import org.springframework.http.HttpHeaders;
|
import org.springframework.http.HttpHeaders;
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
|
@ -28,6 +28,7 @@ import javax.net.ssl.HostnameVerifier;
|
|||||||
import javax.net.ssl.SSLContext;
|
import javax.net.ssl.SSLContext;
|
||||||
|
|
||||||
import org.elasticsearch.client.RestClientBuilder.HttpClientConfigCallback;
|
import org.elasticsearch.client.RestClientBuilder.HttpClientConfigCallback;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.RestClients;
|
||||||
import org.springframework.data.elasticsearch.client.ClientConfiguration.ClientConfigurationBuilderWithRequiredEndpoint;
|
import org.springframework.data.elasticsearch.client.ClientConfiguration.ClientConfigurationBuilderWithRequiredEndpoint;
|
||||||
import org.springframework.data.elasticsearch.client.ClientConfiguration.MaybeSecureClientConfigurationBuilder;
|
import org.springframework.data.elasticsearch.client.ClientConfiguration.MaybeSecureClientConfigurationBuilder;
|
||||||
import org.springframework.data.elasticsearch.client.ClientConfiguration.TerminalClientConfigurationBuilder;
|
import org.springframework.data.elasticsearch.client.ClientConfiguration.TerminalClientConfigurationBuilder;
|
||||||
@ -47,7 +48,7 @@ import org.springframework.web.reactive.function.client.WebClient;
|
|||||||
* @author Henrique Amaral
|
* @author Henrique Amaral
|
||||||
* @since 3.2
|
* @since 3.2
|
||||||
*/
|
*/
|
||||||
class ClientConfigurationBuilder
|
public class ClientConfigurationBuilder
|
||||||
implements ClientConfigurationBuilderWithRequiredEndpoint, MaybeSecureClientConfigurationBuilder {
|
implements ClientConfigurationBuilderWithRequiredEndpoint, MaybeSecureClientConfigurationBuilder {
|
||||||
|
|
||||||
private final List<InetSocketAddress> hosts = new ArrayList<>();
|
private final List<InetSocketAddress> hosts = new ArrayList<>();
|
||||||
|
@ -129,6 +129,7 @@ class DefaultClientConfiguration implements ClientConfiguration {
|
|||||||
return webClientConfigurer;
|
return webClientConfigurer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Deprecated
|
||||||
@Override
|
@Override
|
||||||
public HttpClientConfigCallback getHttpClientConfigurer() {
|
public HttpClientConfigCallback getHttpClientConfigurer() {
|
||||||
return httpClientConfigurer;
|
return httpClientConfigurer;
|
||||||
|
@ -1,7 +0,0 @@
|
|||||||
package org.springframework.data.elasticsearch.client.reactive;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Roman Puchkovskiy
|
|
||||||
* @since 4.0
|
|
||||||
*/
|
|
||||||
class DefaultRequestCreator implements RequestCreator {}
|
|
@ -17,6 +17,9 @@ package org.springframework.data.elasticsearch.client.reactive;
|
|||||||
|
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
|
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.DefaultReactiveElasticsearchClient;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.RequestCreator;
|
||||||
import org.springframework.data.elasticsearch.client.ClientConfiguration;
|
import org.springframework.data.elasticsearch.client.ClientConfiguration;
|
||||||
import org.springframework.util.Assert;
|
import org.springframework.util.Assert;
|
||||||
import org.springframework.web.reactive.function.client.WebClient;
|
import org.springframework.web.reactive.function.client.WebClient;
|
||||||
|
@ -27,6 +27,7 @@ import org.springframework.context.annotation.Configuration;
|
|||||||
import org.springframework.core.convert.converter.Converter;
|
import org.springframework.core.convert.converter.Converter;
|
||||||
import org.springframework.core.type.filter.AnnotationTypeFilter;
|
import org.springframework.core.type.filter.AnnotationTypeFilter;
|
||||||
import org.springframework.data.elasticsearch.annotations.Document;
|
import org.springframework.data.elasticsearch.annotations.Document;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.config.AbstractReactiveElasticsearchConfiguration;
|
||||||
import org.springframework.data.elasticsearch.core.RefreshPolicy;
|
import org.springframework.data.elasticsearch.core.RefreshPolicy;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchCustomConversions;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchCustomConversions;
|
||||||
|
@ -16,10 +16,10 @@
|
|||||||
package org.springframework.data.elasticsearch.config;
|
package org.springframework.data.elasticsearch.config;
|
||||||
|
|
||||||
import org.springframework.beans.factory.support.AbstractBeanDefinition;
|
import org.springframework.beans.factory.support.AbstractBeanDefinition;
|
||||||
import org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
|
|
||||||
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
|
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
|
||||||
|
import org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
|
||||||
import org.springframework.beans.factory.xml.ParserContext;
|
import org.springframework.beans.factory.xml.ParserContext;
|
||||||
import org.springframework.data.elasticsearch.client.RestClientFactoryBean;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.RestClientFactoryBean;
|
||||||
import org.w3c.dom.Element;
|
import org.w3c.dom.Element;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -19,7 +19,7 @@ import org.springframework.beans.factory.support.AbstractBeanDefinition;
|
|||||||
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
|
import org.springframework.beans.factory.support.BeanDefinitionBuilder;
|
||||||
import org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
|
import org.springframework.beans.factory.xml.AbstractBeanDefinitionParser;
|
||||||
import org.springframework.beans.factory.xml.ParserContext;
|
import org.springframework.beans.factory.xml.ParserContext;
|
||||||
import org.springframework.data.elasticsearch.client.TransportClientFactoryBean;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.TransportClientFactoryBean;
|
||||||
import org.w3c.dom.Element;
|
import org.w3c.dom.Element;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -43,13 +43,15 @@ public class TransportClientBeanDefinitionParser extends AbstractBeanDefinitionP
|
|||||||
builder.addPropertyValue("clusterNodes", element.getAttribute("cluster-nodes"));
|
builder.addPropertyValue("clusterNodes", element.getAttribute("cluster-nodes"));
|
||||||
builder.addPropertyValue("clusterName", element.getAttribute("cluster-name"));
|
builder.addPropertyValue("clusterName", element.getAttribute("cluster-name"));
|
||||||
builder.addPropertyValue("clientTransportSniff", Boolean.valueOf(element.getAttribute("client-transport-sniff")));
|
builder.addPropertyValue("clientTransportSniff", Boolean.valueOf(element.getAttribute("client-transport-sniff")));
|
||||||
builder.addPropertyValue("clientIgnoreClusterName", Boolean.valueOf(element.getAttribute("client-transport-ignore-cluster-name")));
|
builder.addPropertyValue("clientIgnoreClusterName",
|
||||||
|
Boolean.valueOf(element.getAttribute("client-transport-ignore-cluster-name")));
|
||||||
builder.addPropertyValue("clientPingTimeout", element.getAttribute("client-transport-ping-timeout"));
|
builder.addPropertyValue("clientPingTimeout", element.getAttribute("client-transport-ping-timeout"));
|
||||||
builder.addPropertyValue("clientNodesSamplerInterval", element.getAttribute("client-transport-nodes-sampler-interval"));
|
builder.addPropertyValue("clientNodesSamplerInterval",
|
||||||
|
element.getAttribute("client-transport-nodes-sampler-interval"));
|
||||||
}
|
}
|
||||||
|
|
||||||
private AbstractBeanDefinition getSourcedBeanDefinition(BeanDefinitionBuilder builder, Element source,
|
private AbstractBeanDefinition getSourcedBeanDefinition(BeanDefinitionBuilder builder, Element source,
|
||||||
ParserContext context) {
|
ParserContext context) {
|
||||||
AbstractBeanDefinition definition = builder.getBeanDefinition();
|
AbstractBeanDefinition definition = builder.getBeanDefinition();
|
||||||
definition.setSource(context.extractSource(source));
|
definition.setSource(context.extractSource(source));
|
||||||
return definition;
|
return definition;
|
||||||
|
@ -26,10 +26,11 @@ import org.springframework.beans.BeansException;
|
|||||||
import org.springframework.context.ApplicationContext;
|
import org.springframework.context.ApplicationContext;
|
||||||
import org.springframework.context.ApplicationContextAware;
|
import org.springframework.context.ApplicationContextAware;
|
||||||
import org.springframework.data.convert.EntityReader;
|
import org.springframework.data.convert.EntityReader;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.document.SearchDocumentResponse;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.RequestFactory;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.convert.MappingElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.MappingElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
import org.springframework.data.elasticsearch.core.document.SearchDocumentResponse;
|
|
||||||
import org.springframework.data.elasticsearch.core.event.AfterConvertCallback;
|
import org.springframework.data.elasticsearch.core.event.AfterConvertCallback;
|
||||||
import org.springframework.data.elasticsearch.core.event.AfterSaveCallback;
|
import org.springframework.data.elasticsearch.core.event.AfterSaveCallback;
|
||||||
import org.springframework.data.elasticsearch.core.event.BeforeConvertCallback;
|
import org.springframework.data.elasticsearch.core.event.BeforeConvertCallback;
|
||||||
|
@ -25,6 +25,7 @@ import org.springframework.core.annotation.AnnotatedElementUtils;
|
|||||||
import org.springframework.dao.InvalidDataAccessApiUsageException;
|
import org.springframework.dao.InvalidDataAccessApiUsageException;
|
||||||
import org.springframework.data.elasticsearch.UncategorizedElasticsearchException;
|
import org.springframework.data.elasticsearch.UncategorizedElasticsearchException;
|
||||||
import org.springframework.data.elasticsearch.annotations.Mapping;
|
import org.springframework.data.elasticsearch.annotations.Mapping;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.RequestFactory;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasData;
|
import org.springframework.data.elasticsearch.core.index.AliasData;
|
||||||
@ -42,7 +43,7 @@ import org.springframework.util.Assert;
|
|||||||
* @author Sascha Woo
|
* @author Sascha Woo
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
*/
|
*/
|
||||||
abstract class AbstractIndexTemplate implements IndexOperations {
|
public abstract class AbstractIndexTemplate implements IndexOperations {
|
||||||
|
|
||||||
protected final ElasticsearchConverter elasticsearchConverter;
|
protected final ElasticsearchConverter elasticsearchConverter;
|
||||||
protected final RequestFactory requestFactory;
|
protected final RequestFactory requestFactory;
|
||||||
|
@ -40,7 +40,7 @@ import org.springframework.util.Assert;
|
|||||||
* @author Roman Puchkovskiy
|
* @author Roman Puchkovskiy
|
||||||
* @since 3.2
|
* @since 3.2
|
||||||
*/
|
*/
|
||||||
class EntityOperations {
|
public class EntityOperations {
|
||||||
|
|
||||||
private static final String ID_FIELD = "id";
|
private static final String ID_FIELD = "id";
|
||||||
|
|
||||||
@ -81,7 +81,8 @@ class EntityOperations {
|
|||||||
* @return the {@link AdaptibleEntity}
|
* @return the {@link AdaptibleEntity}
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||||
<T> AdaptibleEntity<T> forEntity(T entity, ConversionService conversionService, RoutingResolver routingResolver) {
|
public <T> AdaptibleEntity<T> forEntity(T entity, ConversionService conversionService,
|
||||||
|
RoutingResolver routingResolver) {
|
||||||
|
|
||||||
Assert.notNull(entity, "Bean must not be null!");
|
Assert.notNull(entity, "Bean must not be null!");
|
||||||
Assert.notNull(conversionService, "ConversionService must not be null!");
|
Assert.notNull(conversionService, "ConversionService must not be null!");
|
||||||
@ -198,7 +199,7 @@ class EntityOperations {
|
|||||||
* @author Mark Paluch
|
* @author Mark Paluch
|
||||||
* @author Christoph Strobl
|
* @author Christoph Strobl
|
||||||
*/
|
*/
|
||||||
interface AdaptibleEntity<T> extends Entity<T> {
|
public interface AdaptibleEntity<T> extends Entity<T> {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Populates the identifier of the backing entity if it has an identifier property and there's no identifier
|
* Populates the identifier of the backing entity if it has an identifier property and there's no identifier
|
||||||
|
@ -16,7 +16,8 @@
|
|||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.core;
|
||||||
|
|
||||||
import org.reactivestreams.Publisher;
|
import org.reactivestreams.Publisher;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ReactiveElasticsearchTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient;
|
||||||
import org.springframework.data.elasticsearch.core.cluster.ReactiveClusterOperations;
|
import org.springframework.data.elasticsearch.core.cluster.ReactiveClusterOperations;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentEntity;
|
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentEntity;
|
||||||
|
@ -15,6 +15,7 @@
|
|||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.core;
|
||||||
|
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQuery;
|
||||||
import reactor.core.publisher.Flux;
|
import reactor.core.publisher.Flux;
|
||||||
import reactor.core.publisher.Mono;
|
import reactor.core.publisher.Mono;
|
||||||
|
|
||||||
@ -222,8 +223,8 @@ public interface ReactiveSearchOperations {
|
|||||||
/**
|
/**
|
||||||
* Does a suggest query.
|
* Does a suggest query.
|
||||||
*
|
*
|
||||||
* @param query the Query containing the suggest definition. Must be currently a
|
* @param query the Query containing the suggest definition. Must be currently a {@link NativeSearchQuery}, must not
|
||||||
* {@link org.springframework.data.elasticsearch.core.query.NativeSearchQuery}, must not be {@literal null}.
|
* be {@literal null}.
|
||||||
* @param entityType the type of the entities that might be returned for a completion suggestion, must not be
|
* @param entityType the type of the entities that might be returned for a completion suggestion, must not be
|
||||||
* {@literal null}.
|
* {@literal null}.
|
||||||
* @return suggest data
|
* @return suggest data
|
||||||
@ -234,8 +235,8 @@ public interface ReactiveSearchOperations {
|
|||||||
/**
|
/**
|
||||||
* Does a suggest query.
|
* Does a suggest query.
|
||||||
*
|
*
|
||||||
* @param query the Query containing the suggest definition. Must be currently a
|
* @param query the Query containing the suggest definition. Must be currently a {@link NativeSearchQuery}, must not
|
||||||
* {@link org.springframework.data.elasticsearch.core.query.NativeSearchQuery}, must not be {@literal null}.
|
* be {@literal null}.
|
||||||
* @param entityType the type of the entities that might be returned for a completion suggestion, must not be
|
* @param entityType the type of the entities that might be returned for a completion suggestion, must not be
|
||||||
* {@literal null}.
|
* {@literal null}.
|
||||||
* @param index the index to run the query against, must not be {@literal null}.
|
* @param index the index to run the query against, must not be {@literal null}.
|
||||||
|
@ -24,11 +24,11 @@ import java.util.stream.Collectors;
|
|||||||
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.document.SearchDocumentResponse;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
import org.springframework.data.elasticsearch.core.document.NestedMetaData;
|
import org.springframework.data.elasticsearch.core.document.NestedMetaData;
|
||||||
import org.springframework.data.elasticsearch.core.document.SearchDocument;
|
import org.springframework.data.elasticsearch.core.document.SearchDocument;
|
||||||
import org.springframework.data.elasticsearch.core.document.SearchDocumentResponse;
|
|
||||||
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentEntity;
|
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentEntity;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentProperty;
|
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentProperty;
|
||||||
import org.springframework.data.elasticsearch.core.suggest.response.CompletionSuggestion;
|
import org.springframework.data.elasticsearch.core.suggest.response.CompletionSuggestion;
|
||||||
@ -47,7 +47,7 @@ import org.springframework.util.Assert;
|
|||||||
* @author Matt Gilene
|
* @author Matt Gilene
|
||||||
* @since 4.0
|
* @since 4.0
|
||||||
*/
|
*/
|
||||||
class SearchHitMapping<T> {
|
public class SearchHitMapping<T> {
|
||||||
|
|
||||||
private static final Logger LOGGER = LoggerFactory.getLogger(SearchHitMapping.class);
|
private static final Logger LOGGER = LoggerFactory.getLogger(SearchHitMapping.class);
|
||||||
|
|
||||||
@ -64,11 +64,11 @@ class SearchHitMapping<T> {
|
|||||||
this.mappingContext = converter.getMappingContext();
|
this.mappingContext = converter.getMappingContext();
|
||||||
}
|
}
|
||||||
|
|
||||||
static <T> SearchHitMapping<T> mappingFor(Class<T> entityClass, ElasticsearchConverter converter) {
|
public static <T> SearchHitMapping<T> mappingFor(Class<T> entityClass, ElasticsearchConverter converter) {
|
||||||
return new SearchHitMapping<>(entityClass, converter);
|
return new SearchHitMapping<>(entityClass, converter);
|
||||||
}
|
}
|
||||||
|
|
||||||
SearchHits<T> mapHits(SearchDocumentResponse searchDocumentResponse, List<T> contents) {
|
public SearchHits<T> mapHits(SearchDocumentResponse searchDocumentResponse, List<T> contents) {
|
||||||
return mapHitsFromResponse(searchDocumentResponse, contents);
|
return mapHitsFromResponse(searchDocumentResponse, contents);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -122,7 +122,7 @@ class SearchHitMapping<T> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
SearchHit<T> mapHit(SearchDocument searchDocument, T content) {
|
public SearchHit<T> mapHit(SearchDocument searchDocument, T content) {
|
||||||
|
|
||||||
Assert.notNull(searchDocument, "searchDocument is null");
|
Assert.notNull(searchDocument, "searchDocument is null");
|
||||||
Assert.notNull(content, "content is null");
|
Assert.notNull(content, "content is null");
|
||||||
|
@ -19,6 +19,7 @@ import java.util.List;
|
|||||||
|
|
||||||
import org.elasticsearch.action.search.SearchResponse;
|
import org.elasticsearch.action.search.SearchResponse;
|
||||||
import org.elasticsearch.search.suggest.SuggestBuilder;
|
import org.elasticsearch.search.suggest.SuggestBuilder;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.MoreLikeThisQuery;
|
import org.springframework.data.elasticsearch.core.query.MoreLikeThisQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.Query;
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
@ -71,9 +72,9 @@ public interface SearchOperations {
|
|||||||
* @param clazz the entity class
|
* @param clazz the entity class
|
||||||
* @return the suggest response
|
* @return the suggest response
|
||||||
* @since 4.1
|
* @since 4.1
|
||||||
* @deprecated since 4.3 use a {@link org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder} with
|
* @deprecated since 4.3 use a {@link NativeSearchQueryBuilder} with
|
||||||
* {@link org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder#withSuggestBuilder(SuggestBuilder)},
|
* {@link NativeSearchQueryBuilder#withSuggestBuilder(SuggestBuilder)}, call {@link #search(Query, Class)}
|
||||||
* call {@link #search(Query, Class)} and get the suggest from {@link SearchHits#getSuggest()}
|
* and get the suggest from {@link SearchHits#getSuggest()}
|
||||||
*/
|
*/
|
||||||
@Deprecated
|
@Deprecated
|
||||||
SearchResponse suggest(SuggestBuilder suggestion, Class<?> clazz);
|
SearchResponse suggest(SuggestBuilder suggestion, Class<?> clazz);
|
||||||
@ -84,9 +85,9 @@ public interface SearchOperations {
|
|||||||
* @param suggestion the query
|
* @param suggestion the query
|
||||||
* @param index the index to run the query against
|
* @param index the index to run the query against
|
||||||
* @return the suggest response
|
* @return the suggest response
|
||||||
* @deprecated since 4.3 use a {@link org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder} with
|
* @deprecated since 4.3 use a {@link NativeSearchQueryBuilder} with
|
||||||
* {@link org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder#withSuggestBuilder(SuggestBuilder)},
|
* {@link NativeSearchQueryBuilder#withSuggestBuilder(SuggestBuilder)}, call {@link #search(Query, Class)}
|
||||||
* call {@link #search(Query, Class)} and get the suggest from {@link SearchHits#getSuggest()}
|
* and get the suggest from {@link SearchHits#getSuggest()}
|
||||||
*/
|
*/
|
||||||
@Deprecated
|
@Deprecated
|
||||||
SearchResponse suggest(SuggestBuilder suggestion, IndexCoordinates index);
|
SearchResponse suggest(SuggestBuilder suggestion, IndexCoordinates index);
|
||||||
|
@ -1,6 +0,0 @@
|
|||||||
/**
|
|
||||||
* Classes and interfaces used by the code that uses Elasticsearch 7 client libraries
|
|
||||||
*/
|
|
||||||
@org.springframework.lang.NonNullApi
|
|
||||||
@org.springframework.lang.NonNullFields
|
|
||||||
package org.springframework.data.elasticsearch.core.clients.elasticsearch7;
|
|
@ -15,10 +15,6 @@
|
|||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core.cluster;
|
package org.springframework.data.elasticsearch.core.cluster;
|
||||||
|
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchRestTemplate;
|
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchTemplate;
|
|
||||||
import org.springframework.util.Assert;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Elasticsearch operations on cluster level.
|
* Elasticsearch operations on cluster level.
|
||||||
*
|
*
|
||||||
@ -27,32 +23,6 @@ import org.springframework.util.Assert;
|
|||||||
*/
|
*/
|
||||||
public interface ClusterOperations {
|
public interface ClusterOperations {
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates a ClusterOperations for a {@link ElasticsearchRestTemplate}.
|
|
||||||
*
|
|
||||||
* @param template the template, must not be {@literal null}
|
|
||||||
* @return ClusterOperations
|
|
||||||
*/
|
|
||||||
static ClusterOperations forTemplate(ElasticsearchRestTemplate template) {
|
|
||||||
|
|
||||||
Assert.notNull(template, "template must not be null");
|
|
||||||
|
|
||||||
return new DefaultClusterOperations(template);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Creates a ClusterOperations for a {@link ElasticsearchTemplate}.
|
|
||||||
*
|
|
||||||
* @param template the template, must not be {@literal null}
|
|
||||||
* @return ClusterOperations
|
|
||||||
*/
|
|
||||||
static ClusterOperations forTemplate(ElasticsearchTemplate template) {
|
|
||||||
|
|
||||||
Assert.notNull(template, "template must not be null");
|
|
||||||
|
|
||||||
return new DefaultTransportClusterOperations(template);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* get the cluster's health status.
|
* get the cluster's health status.
|
||||||
*
|
*
|
||||||
|
@ -18,6 +18,7 @@ package org.springframework.data.elasticsearch.core.document;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.document.SearchDocumentResponse;
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -32,7 +32,7 @@ import org.slf4j.LoggerFactory;
|
|||||||
import org.springframework.core.io.ClassPathResource;
|
import org.springframework.core.io.ClassPathResource;
|
||||||
import org.springframework.data.annotation.Transient;
|
import org.springframework.data.annotation.Transient;
|
||||||
import org.springframework.data.elasticsearch.annotations.*;
|
import org.springframework.data.elasticsearch.annotations.*;
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchRestTemplate;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchRestTemplate;
|
||||||
import org.springframework.data.elasticsearch.core.ResourceUtil;
|
import org.springframework.data.elasticsearch.core.ResourceUtil;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
|
@ -1,26 +0,0 @@
|
|||||||
package org.springframework.data.elasticsearch.core.query;
|
|
||||||
|
|
||||||
import org.elasticsearch.script.Script;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Ryan Murfitt
|
|
||||||
* @author Artur Konczak
|
|
||||||
*/
|
|
||||||
public class ScriptField {
|
|
||||||
|
|
||||||
private final String fieldName;
|
|
||||||
private final Script script;
|
|
||||||
|
|
||||||
public ScriptField(String fieldName, Script script) {
|
|
||||||
this.fieldName = fieldName;
|
|
||||||
this.script = script;
|
|
||||||
}
|
|
||||||
|
|
||||||
public String fieldName() {
|
|
||||||
return fieldName;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Script script() {
|
|
||||||
return script;
|
|
||||||
}
|
|
||||||
}
|
|
@ -43,8 +43,8 @@ import org.springframework.data.elasticsearch.core.SearchPage;
|
|||||||
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentEntity;
|
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentEntity;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.MoreLikeThisQuery;
|
import org.springframework.data.elasticsearch.core.query.MoreLikeThisQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQuery;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.core.query.Query;
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
|
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
|
||||||
import org.springframework.data.util.StreamUtils;
|
import org.springframework.data.util.StreamUtils;
|
||||||
|
@ -21,15 +21,15 @@ import reactor.core.publisher.Mono;
|
|||||||
import org.reactivestreams.Publisher;
|
import org.reactivestreams.Publisher;
|
||||||
import org.springframework.data.domain.Pageable;
|
import org.springframework.data.domain.Pageable;
|
||||||
import org.springframework.data.domain.Sort;
|
import org.springframework.data.domain.Sort;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ReactiveElasticsearchTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.core.MultiGetItem;
|
import org.springframework.data.elasticsearch.core.MultiGetItem;
|
||||||
import org.springframework.data.elasticsearch.core.ReactiveElasticsearchOperations;
|
import org.springframework.data.elasticsearch.core.ReactiveElasticsearchOperations;
|
||||||
import org.springframework.data.elasticsearch.core.ReactiveElasticsearchTemplate;
|
|
||||||
import org.springframework.data.elasticsearch.core.ReactiveIndexOperations;
|
import org.springframework.data.elasticsearch.core.ReactiveIndexOperations;
|
||||||
import org.springframework.data.elasticsearch.core.RefreshPolicy;
|
import org.springframework.data.elasticsearch.core.RefreshPolicy;
|
||||||
import org.springframework.data.elasticsearch.core.SearchHit;
|
import org.springframework.data.elasticsearch.core.SearchHit;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentEntity;
|
import org.springframework.data.elasticsearch.core.mapping.ElasticsearchPersistentEntity;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
|
||||||
import org.springframework.data.elasticsearch.core.query.Query;
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
import org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository;
|
import org.springframework.data.elasticsearch.repository.ReactiveElasticsearchRepository;
|
||||||
import org.springframework.util.Assert;
|
import org.springframework.util.Assert;
|
||||||
|
@ -1,151 +1,151 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" ?>
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
<xsd:schema xmlns="http://www.springframework.org/schema/data/elasticsearch"
|
<xsd:schema xmlns="http://www.springframework.org/schema/data/elasticsearch"
|
||||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||||
xmlns:beans="http://www.springframework.org/schema/beans"
|
xmlns:beans="http://www.springframework.org/schema/beans"
|
||||||
xmlns:tool="http://www.springframework.org/schema/tool"
|
xmlns:tool="http://www.springframework.org/schema/tool"
|
||||||
xmlns:repository="http://www.springframework.org/schema/data/repository"
|
xmlns:repository="http://www.springframework.org/schema/data/repository"
|
||||||
targetNamespace="http://www.springframework.org/schema/data/elasticsearch"
|
targetNamespace="http://www.springframework.org/schema/data/elasticsearch"
|
||||||
elementFormDefault="qualified"
|
elementFormDefault="qualified"
|
||||||
attributeFormDefault="unqualified">
|
attributeFormDefault="unqualified">
|
||||||
|
|
||||||
<xsd:import namespace="http://www.springframework.org/schema/beans"/>
|
<xsd:import namespace="http://www.springframework.org/schema/beans"/>
|
||||||
<xsd:import namespace="http://www.springframework.org/schema/tool"/>
|
<xsd:import namespace="http://www.springframework.org/schema/tool"/>
|
||||||
<xsd:import namespace="http://www.springframework.org/schema/data/repository"
|
<xsd:import namespace="http://www.springframework.org/schema/data/repository"
|
||||||
schemaLocation="https://www.springframework.org/schema/data/repository/spring-repository.xsd"/>
|
schemaLocation="https://www.springframework.org/schema/data/repository/spring-repository.xsd"/>
|
||||||
|
|
||||||
<xsd:element name="repositories">
|
<xsd:element name="repositories">
|
||||||
<xsd:complexType>
|
<xsd:complexType>
|
||||||
<xsd:complexContent>
|
<xsd:complexContent>
|
||||||
<xsd:extension base="repository:repositories">
|
<xsd:extension base="repository:repositories">
|
||||||
<xsd:attributeGroup ref="repository:repository-attributes"/>
|
<xsd:attributeGroup ref="repository:repository-attributes"/>
|
||||||
<xsd:attribute name="elasticsearch-template-ref" type="elasticsearchTemplateRef"
|
<xsd:attribute name="elasticsearch-template-ref" type="elasticsearchTemplateRef"
|
||||||
default="elasticsearchTemplate"/>
|
default="elasticsearchTemplate"/>
|
||||||
</xsd:extension>
|
</xsd:extension>
|
||||||
</xsd:complexContent>
|
</xsd:complexContent>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
</xsd:element>
|
</xsd:element>
|
||||||
|
|
||||||
<xsd:simpleType name="elasticsearchTemplateRef">
|
<xsd:simpleType name="elasticsearchTemplateRef">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:appinfo>
|
<xsd:appinfo>
|
||||||
<tool:annotation kind="ref">
|
<tool:annotation kind="ref">
|
||||||
<tool:assignable-to type="org.springframework.data.elasticsearch.core.ElasticsearchTemplate"/>
|
<tool:assignable-to type="org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchTemplate"/>
|
||||||
</tool:annotation>
|
</tool:annotation>
|
||||||
</xsd:appinfo>
|
</xsd:appinfo>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
<xsd:union memberTypes="xsd:string"/>
|
<xsd:union memberTypes="xsd:string"/>
|
||||||
</xsd:simpleType>
|
</xsd:simpleType>
|
||||||
|
|
||||||
<xsd:element name="node-client">
|
<xsd:element name="node-client">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation/>
|
<xsd:documentation/>
|
||||||
<xsd:appinfo>
|
<xsd:appinfo>
|
||||||
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
||||||
</xsd:appinfo>
|
</xsd:appinfo>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
<xsd:complexType>
|
<xsd:complexType>
|
||||||
<xsd:complexContent>
|
<xsd:complexContent>
|
||||||
<xsd:extension base="beans:identifiedType">
|
<xsd:extension base="beans:identifiedType">
|
||||||
<xsd:attribute name="local" type="xsd:boolean" default="false">
|
<xsd:attribute name="local" type="xsd:boolean" default="false">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[local here means local on the JVM (well, actually class loader) level, meaning that two local servers started within the same JVM will discover themselves and form a cluster]]>
|
<![CDATA[local here means local on the JVM (well, actually class loader) level, meaning that two local servers started within the same JVM will discover themselves and form a cluster]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
<xsd:attribute name="http-enabled" type="xsd:boolean" default="true">
|
<xsd:attribute name="http-enabled" type="xsd:boolean" default="true">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[ to enable or disable http port ]]>
|
<![CDATA[ to enable or disable http port ]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
<xsd:attribute name="path-data" type="xsd:string" default="">
|
<xsd:attribute name="path-data" type="xsd:string" default="">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[ path to the data folder for node client ]]>
|
<![CDATA[ path to the data folder for node client ]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
<xsd:attribute name="path-home" type="xsd:string" default="">
|
<xsd:attribute name="path-home" type="xsd:string" default="">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[ path to the home folder for node client ]]>
|
<![CDATA[ path to the home folder for node client ]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
<xsd:attribute name="path-configuration" type="xsd:string" default="">
|
<xsd:attribute name="path-configuration" type="xsd:string" default="">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[ path to configuration file for node client ]]>
|
<![CDATA[ path to configuration file for node client ]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
</xsd:extension>
|
</xsd:extension>
|
||||||
</xsd:complexContent>
|
</xsd:complexContent>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
</xsd:element>
|
</xsd:element>
|
||||||
<xsd:element name="transport-client">
|
<xsd:element name="transport-client">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation/>
|
<xsd:documentation/>
|
||||||
<xsd:appinfo>
|
<xsd:appinfo>
|
||||||
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
||||||
</xsd:appinfo>
|
</xsd:appinfo>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
<xsd:complexType>
|
<xsd:complexType>
|
||||||
<xsd:complexContent>
|
<xsd:complexContent>
|
||||||
<xsd:extension base="beans:identifiedType">
|
<xsd:extension base="beans:identifiedType">
|
||||||
<xsd:attribute name="cluster-nodes" type="xsd:string" default="127.0.0.1:9300">
|
<xsd:attribute name="cluster-nodes" type="xsd:string" default="127.0.0.1:9300">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[The comma delimited list of host:port entries to use for elasticsearch cluster.]]>
|
<![CDATA[The comma delimited list of host:port entries to use for elasticsearch cluster.]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
<xsd:attribute name="client-transport-sniff" type="xsd:boolean" default="true">
|
<xsd:attribute name="client-transport-sniff" type="xsd:boolean" default="true">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[The client allows to sniff the rest of the cluster, and add those into its list of machines to use.]]>
|
<![CDATA[The client allows to sniff the rest of the cluster, and add those into its list of machines to use.]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
<xsd:attribute name="client-transport-ignore-cluster-name" type="xsd:boolean" default="false">
|
<xsd:attribute name="client-transport-ignore-cluster-name" type="xsd:boolean" default="false">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[Set to true to ignore cluster name validation of connected nodes. (since 0.19.4)]]>
|
<![CDATA[Set to true to ignore cluster name validation of connected nodes. (since 0.19.4)]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
<xsd:attribute name="client-transport-ping-timeout" type="xsd:string" default="5s">
|
<xsd:attribute name="client-transport-ping-timeout" type="xsd:string" default="5s">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[The time to wait for a ping response from a node. Defaults to 5s.]]>
|
<![CDATA[The time to wait for a ping response from a node. Defaults to 5s.]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
<xsd:attribute name="client-transport-nodes-sampler-interval" type="xsd:string" default="5s">
|
<xsd:attribute name="client-transport-nodes-sampler-interval" type="xsd:string" default="5s">
|
||||||
<xsd:annotation>
|
<xsd:annotation>
|
||||||
<xsd:documentation>
|
<xsd:documentation>
|
||||||
<![CDATA[How often to sample / ping the nodes listed and connected. Defaults to 5s.]]>
|
<![CDATA[How often to sample / ping the nodes listed and connected. Defaults to 5s.]]>
|
||||||
</xsd:documentation>
|
</xsd:documentation>
|
||||||
</xsd:annotation>
|
</xsd:annotation>
|
||||||
</xsd:attribute>
|
</xsd:attribute>
|
||||||
</xsd:extension>
|
</xsd:extension>
|
||||||
</xsd:complexContent>
|
</xsd:complexContent>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
</xsd:element>
|
</xsd:element>
|
||||||
</xsd:schema>
|
</xsd:schema>
|
||||||
|
@ -1,172 +1,172 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" ?>
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
<xsd:schema xmlns="http://www.springframework.org/schema/data/elasticsearch"
|
<xsd:schema xmlns="http://www.springframework.org/schema/data/elasticsearch"
|
||||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||||
xmlns:beans="http://www.springframework.org/schema/beans"
|
xmlns:beans="http://www.springframework.org/schema/beans"
|
||||||
xmlns:tool="http://www.springframework.org/schema/tool"
|
xmlns:tool="http://www.springframework.org/schema/tool"
|
||||||
xmlns:repository="http://www.springframework.org/schema/data/repository"
|
xmlns:repository="http://www.springframework.org/schema/data/repository"
|
||||||
targetNamespace="http://www.springframework.org/schema/data/elasticsearch"
|
targetNamespace="http://www.springframework.org/schema/data/elasticsearch"
|
||||||
elementFormDefault="qualified"
|
elementFormDefault="qualified"
|
||||||
attributeFormDefault="unqualified">
|
attributeFormDefault="unqualified">
|
||||||
|
|
||||||
<xsd:import namespace="http://www.springframework.org/schema/beans"/>
|
<xsd:import namespace="http://www.springframework.org/schema/beans"/>
|
||||||
<xsd:import namespace="http://www.springframework.org/schema/tool"/>
|
<xsd:import namespace="http://www.springframework.org/schema/tool"/>
|
||||||
<xsd:import namespace="http://www.springframework.org/schema/data/repository"
|
<xsd:import namespace="http://www.springframework.org/schema/data/repository"
|
||||||
schemaLocation="https://www.springframework.org/schema/data/repository/spring-repository.xsd"/>
|
schemaLocation="https://www.springframework.org/schema/data/repository/spring-repository.xsd"/>
|
||||||
|
|
||||||
<xsd:element name="repositories">
|
<xsd:element name="repositories">
|
||||||
<xsd:complexType>
|
<xsd:complexType>
|
||||||
<xsd:complexContent>
|
<xsd:complexContent>
|
||||||
<xsd:extension base="repository:repositories">
|
<xsd:extension base="repository:repositories">
|
||||||
<xsd:attributeGroup ref="repository:repository-attributes"/>
|
<xsd:attributeGroup ref="repository:repository-attributes"/>
|
||||||
<xsd:attribute name="elasticsearch-template-ref" type="elasticsearchTemplateRef"
|
<xsd:attribute name="elasticsearch-template-ref" type="elasticsearchTemplateRef"
|
||||||
default="elasticsearchTemplate"/>
|
default="elasticsearchTemplate"/>
|
||||||
</xsd:extension>
|
</xsd:extension>
|
||||||
</xsd:complexContent>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
|
|
||||||
<xsd:simpleType name="elasticsearchTemplateRef">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:appinfo>
|
|
||||||
<tool:annotation kind="ref">
|
|
||||||
<tool:assignable-to type="org.springframework.data.elasticsearch.core.ElasticsearchTemplate"/>
|
|
||||||
</tool:annotation>
|
|
||||||
</xsd:appinfo>
|
|
||||||
</xsd:annotation>
|
|
||||||
<xsd:union memberTypes="xsd:string"/>
|
|
||||||
</xsd:simpleType>
|
|
||||||
|
|
||||||
<xsd:element name="node-client">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation/>
|
|
||||||
<xsd:appinfo>
|
|
||||||
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
|
||||||
</xsd:appinfo>
|
|
||||||
</xsd:annotation>
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:complexContent>
|
|
||||||
<xsd:extension base="beans:identifiedType">
|
|
||||||
<xsd:attribute name="local" type="xsd:boolean" default="false">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[local here means local on the JVM (well, actually class loader) level, meaning that two local servers started within the same JVM will discover themselves and form a cluster]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="http-enabled" type="xsd:boolean" default="true">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[ to enable or disable http port ]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="path-data" type="xsd:string" default="">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[ path to the data folder for node client ]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="path-home" type="xsd:string" default="">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[ path to the home folder for node client ]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="path-configuration" type="xsd:string" default="">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[ path to configuration file for node client ]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
</xsd:extension>
|
|
||||||
</xsd:complexContent>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="transport-client">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation/>
|
|
||||||
<xsd:appinfo>
|
|
||||||
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
|
||||||
</xsd:appinfo>
|
|
||||||
</xsd:annotation>
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:complexContent>
|
|
||||||
<xsd:extension base="beans:identifiedType">
|
|
||||||
<xsd:attribute name="cluster-nodes" type="xsd:string" default="127.0.0.1:9300">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[The comma delimited list of host:port entries to use for elasticsearch cluster.]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="client-transport-sniff" type="xsd:boolean" default="true">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[The client allows to sniff the rest of the cluster, and add those into its list of machines to use.]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="client-transport-ignore-cluster-name" type="xsd:boolean" default="false">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[Set to true to ignore cluster name validation of connected nodes. (since 0.19.4)]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="client-transport-ping-timeout" type="xsd:string" default="5s">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[The time to wait for a ping response from a node. Defaults to 5s.]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="client-transport-nodes-sampler-interval" type="xsd:string" default="5s">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[How often to sample / ping the nodes listed and connected. Defaults to 5s.]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
</xsd:extension>
|
|
||||||
</xsd:complexContent>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="rest-client">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation/>
|
|
||||||
<xsd:appinfo>
|
|
||||||
<tool:assignable-to type="org.elasticsearch.client.RestHighLevelClient"/>
|
|
||||||
</xsd:appinfo>
|
|
||||||
</xsd:annotation>
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:complexContent>
|
|
||||||
<xsd:extension base="beans:identifiedType">
|
|
||||||
<xsd:attribute name="hosts" type="xsd:string" default="http://127.0.0.1:9200">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[The comma delimited list of host:port entries to use for elasticsearch cluster.]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
</xsd:extension>
|
|
||||||
</xsd:complexContent>
|
</xsd:complexContent>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
</xsd:element>
|
</xsd:element>
|
||||||
|
|
||||||
|
<xsd:simpleType name="elasticsearchTemplateRef">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:appinfo>
|
||||||
|
<tool:annotation kind="ref">
|
||||||
|
<tool:assignable-to type="org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchTemplate"/>
|
||||||
|
</tool:annotation>
|
||||||
|
</xsd:appinfo>
|
||||||
|
</xsd:annotation>
|
||||||
|
<xsd:union memberTypes="xsd:string"/>
|
||||||
|
</xsd:simpleType>
|
||||||
|
|
||||||
|
<xsd:element name="node-client">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation/>
|
||||||
|
<xsd:appinfo>
|
||||||
|
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
||||||
|
</xsd:appinfo>
|
||||||
|
</xsd:annotation>
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:complexContent>
|
||||||
|
<xsd:extension base="beans:identifiedType">
|
||||||
|
<xsd:attribute name="local" type="xsd:boolean" default="false">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[local here means local on the JVM (well, actually class loader) level, meaning that two local servers started within the same JVM will discover themselves and form a cluster]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="http-enabled" type="xsd:boolean" default="true">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[ to enable or disable http port ]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="path-data" type="xsd:string" default="">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[ path to the data folder for node client ]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="path-home" type="xsd:string" default="">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[ path to the home folder for node client ]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="path-configuration" type="xsd:string" default="">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[ path to configuration file for node client ]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
</xsd:extension>
|
||||||
|
</xsd:complexContent>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="transport-client">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation/>
|
||||||
|
<xsd:appinfo>
|
||||||
|
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
||||||
|
</xsd:appinfo>
|
||||||
|
</xsd:annotation>
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:complexContent>
|
||||||
|
<xsd:extension base="beans:identifiedType">
|
||||||
|
<xsd:attribute name="cluster-nodes" type="xsd:string" default="127.0.0.1:9300">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[The comma delimited list of host:port entries to use for elasticsearch cluster.]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="client-transport-sniff" type="xsd:boolean" default="true">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[The client allows to sniff the rest of the cluster, and add those into its list of machines to use.]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="client-transport-ignore-cluster-name" type="xsd:boolean" default="false">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[Set to true to ignore cluster name validation of connected nodes. (since 0.19.4)]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="client-transport-ping-timeout" type="xsd:string" default="5s">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[The time to wait for a ping response from a node. Defaults to 5s.]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="client-transport-nodes-sampler-interval" type="xsd:string" default="5s">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[How often to sample / ping the nodes listed and connected. Defaults to 5s.]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
</xsd:extension>
|
||||||
|
</xsd:complexContent>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="rest-client">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation/>
|
||||||
|
<xsd:appinfo>
|
||||||
|
<tool:assignable-to type="org.elasticsearch.client.RestHighLevelClient"/>
|
||||||
|
</xsd:appinfo>
|
||||||
|
</xsd:annotation>
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:complexContent>
|
||||||
|
<xsd:extension base="beans:identifiedType">
|
||||||
|
<xsd:attribute name="hosts" type="xsd:string" default="http://127.0.0.1:9200">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[The comma delimited list of host:port entries to use for elasticsearch cluster.]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
</xsd:extension>
|
||||||
|
</xsd:complexContent>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
</xsd:schema>
|
</xsd:schema>
|
||||||
|
@ -1,172 +1,172 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" ?>
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
<xsd:schema xmlns="http://www.springframework.org/schema/data/elasticsearch"
|
<xsd:schema xmlns="http://www.springframework.org/schema/data/elasticsearch"
|
||||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||||
xmlns:beans="http://www.springframework.org/schema/beans"
|
xmlns:beans="http://www.springframework.org/schema/beans"
|
||||||
xmlns:tool="http://www.springframework.org/schema/tool"
|
xmlns:tool="http://www.springframework.org/schema/tool"
|
||||||
xmlns:repository="http://www.springframework.org/schema/data/repository"
|
xmlns:repository="http://www.springframework.org/schema/data/repository"
|
||||||
targetNamespace="http://www.springframework.org/schema/data/elasticsearch"
|
targetNamespace="http://www.springframework.org/schema/data/elasticsearch"
|
||||||
elementFormDefault="qualified"
|
elementFormDefault="qualified"
|
||||||
attributeFormDefault="unqualified">
|
attributeFormDefault="unqualified">
|
||||||
|
|
||||||
<xsd:import namespace="http://www.springframework.org/schema/beans"/>
|
<xsd:import namespace="http://www.springframework.org/schema/beans"/>
|
||||||
<xsd:import namespace="http://www.springframework.org/schema/tool"/>
|
<xsd:import namespace="http://www.springframework.org/schema/tool"/>
|
||||||
<xsd:import namespace="http://www.springframework.org/schema/data/repository"
|
<xsd:import namespace="http://www.springframework.org/schema/data/repository"
|
||||||
schemaLocation="https://www.springframework.org/schema/data/repository/spring-repository.xsd"/>
|
schemaLocation="https://www.springframework.org/schema/data/repository/spring-repository.xsd"/>
|
||||||
|
|
||||||
<xsd:element name="repositories">
|
<xsd:element name="repositories">
|
||||||
<xsd:complexType>
|
<xsd:complexType>
|
||||||
<xsd:complexContent>
|
<xsd:complexContent>
|
||||||
<xsd:extension base="repository:repositories">
|
<xsd:extension base="repository:repositories">
|
||||||
<xsd:attributeGroup ref="repository:repository-attributes"/>
|
<xsd:attributeGroup ref="repository:repository-attributes"/>
|
||||||
<xsd:attribute name="elasticsearch-template-ref" type="elasticsearchTemplateRef"
|
<xsd:attribute name="elasticsearch-template-ref" type="elasticsearchTemplateRef"
|
||||||
default="elasticsearchTemplate"/>
|
default="elasticsearchTemplate"/>
|
||||||
</xsd:extension>
|
</xsd:extension>
|
||||||
</xsd:complexContent>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
|
|
||||||
<xsd:simpleType name="elasticsearchTemplateRef">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:appinfo>
|
|
||||||
<tool:annotation kind="ref">
|
|
||||||
<tool:assignable-to type="org.springframework.data.elasticsearch.core.ElasticsearchTemplate"/>
|
|
||||||
</tool:annotation>
|
|
||||||
</xsd:appinfo>
|
|
||||||
</xsd:annotation>
|
|
||||||
<xsd:union memberTypes="xsd:string"/>
|
|
||||||
</xsd:simpleType>
|
|
||||||
|
|
||||||
<xsd:element name="node-client">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation/>
|
|
||||||
<xsd:appinfo>
|
|
||||||
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
|
||||||
</xsd:appinfo>
|
|
||||||
</xsd:annotation>
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:complexContent>
|
|
||||||
<xsd:extension base="beans:identifiedType">
|
|
||||||
<xsd:attribute name="local" type="xsd:boolean" default="false">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[local here means local on the JVM (well, actually class loader) level, meaning that two local servers started within the same JVM will discover themselves and form a cluster]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="http-enabled" type="xsd:boolean" default="true">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[ to enable or disable http port ]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="path-data" type="xsd:string" default="">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[ path to the data folder for node client ]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="path-home" type="xsd:string" default="">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[ path to the home folder for node client ]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="path-configuration" type="xsd:string" default="">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[ path to configuration file for node client ]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
</xsd:extension>
|
|
||||||
</xsd:complexContent>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="transport-client">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation/>
|
|
||||||
<xsd:appinfo>
|
|
||||||
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
|
||||||
</xsd:appinfo>
|
|
||||||
</xsd:annotation>
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:complexContent>
|
|
||||||
<xsd:extension base="beans:identifiedType">
|
|
||||||
<xsd:attribute name="cluster-nodes" type="xsd:string" default="127.0.0.1:9300">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[The comma delimited list of host:port entries to use for elasticsearch cluster.]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="client-transport-sniff" type="xsd:boolean" default="true">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[The client allows to sniff the rest of the cluster, and add those into its list of machines to use.]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="client-transport-ignore-cluster-name" type="xsd:boolean" default="false">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[Set to true to ignore cluster name validation of connected nodes. (since 0.19.4)]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="client-transport-ping-timeout" type="xsd:string" default="5s">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[The time to wait for a ping response from a node. Defaults to 5s.]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
<xsd:attribute name="client-transport-nodes-sampler-interval" type="xsd:string" default="5s">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[How often to sample / ping the nodes listed and connected. Defaults to 5s.]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
</xsd:extension>
|
|
||||||
</xsd:complexContent>
|
|
||||||
</xsd:complexType>
|
|
||||||
</xsd:element>
|
|
||||||
<xsd:element name="rest-client">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation/>
|
|
||||||
<xsd:appinfo>
|
|
||||||
<tool:assignable-to type="org.elasticsearch.client.RestHighLevelClient"/>
|
|
||||||
</xsd:appinfo>
|
|
||||||
</xsd:annotation>
|
|
||||||
<xsd:complexType>
|
|
||||||
<xsd:complexContent>
|
|
||||||
<xsd:extension base="beans:identifiedType">
|
|
||||||
<xsd:attribute name="hosts" type="xsd:string" default="http://127.0.0.1:9200">
|
|
||||||
<xsd:annotation>
|
|
||||||
<xsd:documentation>
|
|
||||||
<![CDATA[The comma delimited list of host:port entries to use for elasticsearch cluster.]]>
|
|
||||||
</xsd:documentation>
|
|
||||||
</xsd:annotation>
|
|
||||||
</xsd:attribute>
|
|
||||||
</xsd:extension>
|
|
||||||
</xsd:complexContent>
|
</xsd:complexContent>
|
||||||
</xsd:complexType>
|
</xsd:complexType>
|
||||||
</xsd:element>
|
</xsd:element>
|
||||||
|
|
||||||
|
<xsd:simpleType name="elasticsearchTemplateRef">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:appinfo>
|
||||||
|
<tool:annotation kind="ref">
|
||||||
|
<tool:assignable-to type="org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchTemplate"/>
|
||||||
|
</tool:annotation>
|
||||||
|
</xsd:appinfo>
|
||||||
|
</xsd:annotation>
|
||||||
|
<xsd:union memberTypes="xsd:string"/>
|
||||||
|
</xsd:simpleType>
|
||||||
|
|
||||||
|
<xsd:element name="node-client">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation/>
|
||||||
|
<xsd:appinfo>
|
||||||
|
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
||||||
|
</xsd:appinfo>
|
||||||
|
</xsd:annotation>
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:complexContent>
|
||||||
|
<xsd:extension base="beans:identifiedType">
|
||||||
|
<xsd:attribute name="local" type="xsd:boolean" default="false">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[local here means local on the JVM (well, actually class loader) level, meaning that two local servers started within the same JVM will discover themselves and form a cluster]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="http-enabled" type="xsd:boolean" default="true">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[ to enable or disable http port ]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="path-data" type="xsd:string" default="">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[ path to the data folder for node client ]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="path-home" type="xsd:string" default="">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[ path to the home folder for node client ]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="path-configuration" type="xsd:string" default="">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[ path to configuration file for node client ]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
</xsd:extension>
|
||||||
|
</xsd:complexContent>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="transport-client">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation/>
|
||||||
|
<xsd:appinfo>
|
||||||
|
<tool:assignable-to type="org.elasticsearch.client.Client"/>
|
||||||
|
</xsd:appinfo>
|
||||||
|
</xsd:annotation>
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:complexContent>
|
||||||
|
<xsd:extension base="beans:identifiedType">
|
||||||
|
<xsd:attribute name="cluster-nodes" type="xsd:string" default="127.0.0.1:9300">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[The comma delimited list of host:port entries to use for elasticsearch cluster.]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="cluster-name" type="xsd:string" default="elasticsearch">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[Name of the cluster in which this instance of node client will connect to]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="client-transport-sniff" type="xsd:boolean" default="true">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[The client allows to sniff the rest of the cluster, and add those into its list of machines to use.]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="client-transport-ignore-cluster-name" type="xsd:boolean" default="false">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[Set to true to ignore cluster name validation of connected nodes. (since 0.19.4)]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="client-transport-ping-timeout" type="xsd:string" default="5s">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[The time to wait for a ping response from a node. Defaults to 5s.]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
<xsd:attribute name="client-transport-nodes-sampler-interval" type="xsd:string" default="5s">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[How often to sample / ping the nodes listed and connected. Defaults to 5s.]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
</xsd:extension>
|
||||||
|
</xsd:complexContent>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
|
<xsd:element name="rest-client">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation/>
|
||||||
|
<xsd:appinfo>
|
||||||
|
<tool:assignable-to type="org.elasticsearch.client.RestHighLevelClient"/>
|
||||||
|
</xsd:appinfo>
|
||||||
|
</xsd:annotation>
|
||||||
|
<xsd:complexType>
|
||||||
|
<xsd:complexContent>
|
||||||
|
<xsd:extension base="beans:identifiedType">
|
||||||
|
<xsd:attribute name="hosts" type="xsd:string" default="http://127.0.0.1:9200">
|
||||||
|
<xsd:annotation>
|
||||||
|
<xsd:documentation>
|
||||||
|
<![CDATA[The comma delimited list of host:port entries to use for elasticsearch cluster.]]>
|
||||||
|
</xsd:documentation>
|
||||||
|
</xsd:annotation>
|
||||||
|
</xsd:attribute>
|
||||||
|
</xsd:extension>
|
||||||
|
</xsd:complexContent>
|
||||||
|
</xsd:complexType>
|
||||||
|
</xsd:element>
|
||||||
</xsd:schema>
|
</xsd:schema>
|
||||||
|
@ -20,8 +20,8 @@ import static org.assertj.core.api.Assertions.*;
|
|||||||
import org.junit.jupiter.api.DisplayName;
|
import org.junit.jupiter.api.DisplayName;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchRestTemplate;
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
|
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchRestTemplate;
|
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
|
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
@ -33,7 +33,7 @@ import org.springframework.test.context.ContextConfiguration;
|
|||||||
* @author Peter-Josef Meisch
|
* @author Peter-Josef Meisch
|
||||||
*/
|
*/
|
||||||
@SpringIntegrationTest
|
@SpringIntegrationTest
|
||||||
@ContextConfiguration(classes = { ElasticsearchRestTemplateConfiguration.class})
|
@ContextConfiguration(classes = { ElasticsearchRestTemplateConfiguration.class })
|
||||||
@DisplayName("a sample JUnit 5 test with rest client")
|
@DisplayName("a sample JUnit 5 test with rest client")
|
||||||
public class JUnit5SampleRestClientBasedTests {
|
public class JUnit5SampleRestClientBasedTests {
|
||||||
|
|
||||||
|
@ -20,8 +20,8 @@ import static org.assertj.core.api.Assertions.*;
|
|||||||
import org.junit.jupiter.api.DisplayName;
|
import org.junit.jupiter.api.DisplayName;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchTemplate;
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
|
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchTemplate;
|
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchTemplateConfiguration;
|
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchTemplateConfiguration;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
|
@ -40,12 +40,13 @@ import org.springframework.data.elasticsearch.annotations.Field;
|
|||||||
import org.springframework.data.elasticsearch.annotations.FieldType;
|
import org.springframework.data.elasticsearch.annotations.FieldType;
|
||||||
import org.springframework.data.elasticsearch.annotations.InnerField;
|
import org.springframework.data.elasticsearch.annotations.InnerField;
|
||||||
import org.springframework.data.elasticsearch.annotations.MultiField;
|
import org.springframework.data.elasticsearch.annotations.MultiField;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQuery;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
|
import org.springframework.data.elasticsearch.core.ElasticsearchOperations;
|
||||||
import org.springframework.data.elasticsearch.core.SearchHits;
|
import org.springframework.data.elasticsearch.core.SearchHits;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQuery;
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
|
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
||||||
import org.springframework.data.elasticsearch.utils.IndexInitializer;
|
import org.springframework.data.elasticsearch.utils.IndexInitializer;
|
||||||
@ -131,7 +132,7 @@ public class NestedObjectTests {
|
|||||||
QueryBuilder builder = nestedQuery("car",
|
QueryBuilder builder = nestedQuery("car",
|
||||||
boolQuery().must(termQuery("car.name", "saturn")).must(termQuery("car.model", "imprezza")), ScoreMode.None);
|
boolQuery().must(termQuery("car.name", "saturn")).must(termQuery("car.model", "imprezza")), ScoreMode.None);
|
||||||
|
|
||||||
NativeSearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(builder).build();
|
Query searchQuery = new NativeSearchQueryBuilder().withQuery(builder).build();
|
||||||
SearchHits<Person> persons = operations.search(searchQuery, Person.class, index);
|
SearchHits<Person> persons = operations.search(searchQuery, Person.class, index);
|
||||||
|
|
||||||
assertThat(persons).hasSize(1);
|
assertThat(persons).hasSize(1);
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.clients.elasticsearch7;
|
||||||
|
|
||||||
import static org.skyscreamer.jsonassert.JSONAssert.*;
|
import static org.skyscreamer.jsonassert.JSONAssert.*;
|
||||||
|
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.clients.elasticsearch7;
|
||||||
|
|
||||||
import static org.skyscreamer.jsonassert.JSONAssert.*;
|
import static org.skyscreamer.jsonassert.JSONAssert.*;
|
||||||
|
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.core;
|
package org.springframework.data.elasticsearch.clients.elasticsearch7;
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.*;
|
import static org.assertj.core.api.Assertions.*;
|
||||||
import static org.elasticsearch.index.query.QueryBuilders.*;
|
import static org.elasticsearch.index.query.QueryBuilders.*;
|
||||||
@ -69,7 +69,7 @@ import org.springframework.data.elasticsearch.core.query.CriteriaQuery;
|
|||||||
import org.springframework.data.elasticsearch.core.query.GeoDistanceOrder;
|
import org.springframework.data.elasticsearch.core.query.GeoDistanceOrder;
|
||||||
import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.IndexQueryBuilder;
|
import org.springframework.data.elasticsearch.core.query.IndexQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.core.query.Query;
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
import org.springframework.data.elasticsearch.core.query.RescorerQuery;
|
import org.springframework.data.elasticsearch.core.query.RescorerQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.RescorerQuery.ScoreMode;
|
import org.springframework.data.elasticsearch.core.query.RescorerQuery.ScoreMode;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client;
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.*;
|
import static org.assertj.core.api.Assertions.*;
|
||||||
|
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client;
|
||||||
|
|
||||||
import static com.github.tomakehurst.wiremock.client.WireMock.*;
|
import static com.github.tomakehurst.wiremock.client.WireMock.*;
|
||||||
import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.options;
|
import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.options;
|
||||||
@ -38,7 +38,9 @@ import org.junit.jupiter.api.DisplayName;
|
|||||||
import org.junit.jupiter.api.extension.ExtendWith;
|
import org.junit.jupiter.api.extension.ExtendWith;
|
||||||
import org.junit.jupiter.params.ParameterizedTest;
|
import org.junit.jupiter.params.ParameterizedTest;
|
||||||
import org.junit.jupiter.params.provider.MethodSource;
|
import org.junit.jupiter.params.provider.MethodSource;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient;
|
||||||
|
import org.springframework.data.elasticsearch.client.ClientConfiguration;
|
||||||
|
import org.springframework.data.elasticsearch.client.ClientConfigurationBuilder;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveRestClients;
|
import org.springframework.data.elasticsearch.client.reactive.ReactiveRestClients;
|
||||||
import org.springframework.http.HttpHeaders;
|
import org.springframework.http.HttpHeaders;
|
||||||
|
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client.reactive;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive;
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.*;
|
import static org.assertj.core.api.Assertions.*;
|
||||||
import static org.elasticsearch.search.internal.SearchContext.*;
|
import static org.elasticsearch.search.internal.SearchContext.*;
|
||||||
@ -40,6 +40,7 @@ import org.mockito.Mock;
|
|||||||
import org.mockito.Spy;
|
import org.mockito.Spy;
|
||||||
import org.mockito.junit.jupiter.MockitoExtension;
|
import org.mockito.junit.jupiter.MockitoExtension;
|
||||||
import org.springframework.data.elasticsearch.RestStatusException;
|
import org.springframework.data.elasticsearch.RestStatusException;
|
||||||
|
import org.springframework.data.elasticsearch.client.reactive.HostProvider;
|
||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
import org.springframework.web.reactive.function.client.ClientResponse;
|
import org.springframework.web.reactive.function.client.ClientResponse;
|
||||||
import org.springframework.web.reactive.function.client.WebClient;
|
import org.springframework.web.reactive.function.client.WebClient;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client.reactive;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive;
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.*;
|
import static org.assertj.core.api.Assertions.*;
|
||||||
|
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client.reactive;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive;
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.*;
|
import static org.assertj.core.api.Assertions.*;
|
||||||
import static org.mockito.Mockito.*;
|
import static org.mockito.Mockito.*;
|
||||||
@ -46,6 +46,8 @@ import org.junit.jupiter.api.Test;
|
|||||||
import org.mockito.Mockito;
|
import org.mockito.Mockito;
|
||||||
import org.reactivestreams.Publisher;
|
import org.reactivestreams.Publisher;
|
||||||
import org.springframework.data.elasticsearch.RestStatusException;
|
import org.springframework.data.elasticsearch.RestStatusException;
|
||||||
|
import org.springframework.data.elasticsearch.client.reactive.HostProvider;
|
||||||
|
import org.springframework.data.elasticsearch.client.reactive.ReactiveMockClientTestsUtils;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveMockClientTestsUtils.MockDelegatingElasticsearchHostProvider;
|
import org.springframework.data.elasticsearch.client.reactive.ReactiveMockClientTestsUtils.MockDelegatingElasticsearchHostProvider;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveMockClientTestsUtils.MockWebClientProvider.Receive;
|
import org.springframework.data.elasticsearch.client.reactive.ReactiveMockClientTestsUtils.MockWebClientProvider.Receive;
|
||||||
import org.springframework.http.HttpMethod;
|
import org.springframework.http.HttpMethod;
|
@ -13,7 +13,7 @@
|
|||||||
* See the License for the specific language governing permissions and
|
* See the License for the specific language governing permissions and
|
||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
package org.springframework.data.elasticsearch.client.util;
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.util;
|
||||||
|
|
||||||
import static org.assertj.core.api.Assertions.*;
|
import static org.assertj.core.api.Assertions.*;
|
||||||
|
|
@ -0,0 +1,3 @@
|
|||||||
|
@org.springframework.lang.NonNullApi
|
||||||
|
@org.springframework.lang.NonNullFields
|
||||||
|
package org.springframework.data.elasticsearch.backend.elasticsearch7.client.util;
|
@ -19,9 +19,6 @@ import reactor.blockhound.BlockHound;
|
|||||||
import reactor.blockhound.BlockingOperationError;
|
import reactor.blockhound.BlockingOperationError;
|
||||||
import reactor.blockhound.integration.BlockHoundIntegration;
|
import reactor.blockhound.integration.BlockHoundIntegration;
|
||||||
|
|
||||||
import org.elasticsearch.Build;
|
|
||||||
import org.elasticsearch.common.xcontent.XContentBuilder;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Peter-Josef Meisch
|
* @author Peter-Josef Meisch
|
||||||
*/
|
*/
|
||||||
@ -30,8 +27,8 @@ public class BlockHoundIntegrationCustomizer implements BlockHoundIntegration {
|
|||||||
@Override
|
@Override
|
||||||
public void applyTo(BlockHound.Builder builder) {
|
public void applyTo(BlockHound.Builder builder) {
|
||||||
// Elasticsearch classes reading from the classpath on initialization, needed for parsing Elasticsearch responses
|
// Elasticsearch classes reading from the classpath on initialization, needed for parsing Elasticsearch responses
|
||||||
builder.allowBlockingCallsInside(XContentBuilder.class.getName(), "<clinit>")
|
builder.allowBlockingCallsInside("org.elasticsearch.common.xcontent.XContentBuilder", "<clinit>")
|
||||||
.allowBlockingCallsInside(Build.class.getName(), "<clinit>");
|
.allowBlockingCallsInside("org.elasticsearch.Build", "<clinit>");
|
||||||
|
|
||||||
builder.blockingMethodCallback(it -> {
|
builder.blockingMethodCallback(it -> {
|
||||||
throw new BlockingOperationError(it);
|
throw new BlockingOperationError(it);
|
||||||
|
@ -30,6 +30,7 @@ import org.apache.http.conn.ssl.NoopHostnameVerifier;
|
|||||||
import org.apache.http.impl.nio.client.HttpAsyncClientBuilder;
|
import org.apache.http.impl.nio.client.HttpAsyncClientBuilder;
|
||||||
import org.junit.jupiter.api.DisplayName;
|
import org.junit.jupiter.api.DisplayName;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.RestClients;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveRestClients;
|
import org.springframework.data.elasticsearch.client.reactive.ReactiveRestClients;
|
||||||
import org.springframework.http.HttpHeaders;
|
import org.springframework.http.HttpHeaders;
|
||||||
import org.springframework.web.reactive.function.client.WebClient;
|
import org.springframework.web.reactive.function.client.WebClient;
|
||||||
|
@ -18,24 +18,21 @@ package org.springframework.data.elasticsearch.config;
|
|||||||
import static org.assertj.core.api.Assertions.*;
|
import static org.assertj.core.api.Assertions.*;
|
||||||
import static org.mockito.Mockito.*;
|
import static org.mockito.Mockito.*;
|
||||||
|
|
||||||
import reactor.core.publisher.Mono;
|
|
||||||
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
|
||||||
import org.elasticsearch.Version;
|
|
||||||
import org.elasticsearch.action.main.MainResponse;
|
|
||||||
import org.elasticsearch.client.RestHighLevelClient;
|
import org.elasticsearch.client.RestHighLevelClient;
|
||||||
import org.elasticsearch.cluster.ClusterName;
|
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
|
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
|
||||||
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.context.support.AbstractApplicationContext;
|
import org.springframework.context.support.AbstractApplicationContext;
|
||||||
import org.springframework.data.elasticsearch.annotations.Document;
|
import org.springframework.data.elasticsearch.annotations.Document;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchRestTemplate;
|
||||||
import org.springframework.data.elasticsearch.core.ElasticsearchRestTemplate;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ReactiveElasticsearchTemplate;
|
||||||
import org.springframework.data.elasticsearch.core.ReactiveElasticsearchTemplate;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.config.AbstractElasticsearchConfiguration;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.config.AbstractReactiveElasticsearchConfiguration;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.SimpleElasticsearchMappingContext;
|
import org.springframework.data.elasticsearch.core.mapping.SimpleElasticsearchMappingContext;
|
||||||
|
|
||||||
@ -116,10 +113,7 @@ public class ElasticsearchConfigurationSupportUnitTests {
|
|||||||
@Override
|
@Override
|
||||||
@Bean
|
@Bean
|
||||||
public ReactiveElasticsearchClient reactiveElasticsearchClient() {
|
public ReactiveElasticsearchClient reactiveElasticsearchClient() {
|
||||||
ReactiveElasticsearchClient client = mock(ReactiveElasticsearchClient.class);
|
return mock(ReactiveElasticsearchClient.class);
|
||||||
when(client.info()).thenReturn(Mono
|
|
||||||
.just(new MainResponse("mockNodename", Version.CURRENT, new ClusterName("mockCluster"), "mockUuid", null)));
|
|
||||||
return client;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
import org.springframework.data.annotation.Id;
|
import org.springframework.data.annotation.Id;
|
||||||
import org.springframework.data.elasticsearch.annotations.Document;
|
import org.springframework.data.elasticsearch.annotations.Document;
|
||||||
import org.springframework.data.elasticsearch.config.AbstractElasticsearchConfiguration;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.config.AbstractElasticsearchConfiguration;
|
||||||
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
|
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
|
||||||
import org.springframework.data.elasticsearch.repository.config.EnableElasticsearchRepositories;
|
import org.springframework.data.elasticsearch.repository.config.EnableElasticsearchRepositories;
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
|
@ -24,8 +24,8 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||||||
import org.springframework.context.ApplicationContext;
|
import org.springframework.context.ApplicationContext;
|
||||||
import org.springframework.data.annotation.Id;
|
import org.springframework.data.annotation.Id;
|
||||||
import org.springframework.data.elasticsearch.annotations.Document;
|
import org.springframework.data.elasticsearch.annotations.Document;
|
||||||
import org.springframework.data.elasticsearch.client.RestClientFactoryBean;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.RestClientFactoryBean;
|
||||||
import org.springframework.data.elasticsearch.client.TransportClientFactoryBean;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.TransportClientFactoryBean;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.Tags;
|
import org.springframework.data.elasticsearch.junit.jupiter.Tags;
|
||||||
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
|
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
|
||||||
import org.springframework.test.context.ContextConfiguration;
|
import org.springframework.test.context.ContextConfiguration;
|
||||||
|
@ -38,7 +38,7 @@ import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
|||||||
import org.springframework.data.elasticsearch.core.query.BulkOptions;
|
import org.springframework.data.elasticsearch.core.query.BulkOptions;
|
||||||
import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.MoreLikeThisQuery;
|
import org.springframework.data.elasticsearch.core.query.MoreLikeThisQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.core.query.Query;
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
import org.springframework.data.mapping.callback.EntityCallbacks;
|
import org.springframework.data.mapping.callback.EntityCallbacks;
|
||||||
import org.springframework.data.util.CloseableIterator;
|
import org.springframework.data.util.CloseableIterator;
|
||||||
@ -441,15 +441,14 @@ abstract class AbstractElasticsearchTemplateCallbackTests {
|
|||||||
|
|
||||||
static class Person {
|
static class Person {
|
||||||
@Nullable @Id String id;
|
@Nullable @Id String id;
|
||||||
@Nullable String firstname;
|
@Nullable String firstname;
|
||||||
|
|
||||||
public Person(@Nullable String id, @Nullable String firstname) {
|
public Person(@Nullable String id, @Nullable String firstname) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.firstname = firstname;
|
this.firstname = firstname;
|
||||||
}
|
}
|
||||||
|
|
||||||
public Person() {
|
public Person() {}
|
||||||
}
|
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
public String getId() {
|
public String getId() {
|
||||||
@ -471,12 +470,15 @@ abstract class AbstractElasticsearchTemplateCallbackTests {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) return true;
|
if (this == o)
|
||||||
if (o == null || getClass() != o.getClass()) return false;
|
return true;
|
||||||
|
if (o == null || getClass() != o.getClass())
|
||||||
|
return false;
|
||||||
|
|
||||||
Person person = (Person) o;
|
Person person = (Person) o;
|
||||||
|
|
||||||
if (id != null ? !id.equals(person.id) : person.id != null) return false;
|
if (id != null ? !id.equals(person.id) : person.id != null)
|
||||||
|
return false;
|
||||||
return firstname != null ? firstname.equals(person.firstname) : person.firstname == null;
|
return firstname != null ? firstname.equals(person.firstname) : person.firstname == null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -33,8 +33,8 @@ import org.elasticsearch.search.SearchHit;
|
|||||||
import org.elasticsearch.search.SearchShardTarget;
|
import org.elasticsearch.search.SearchShardTarget;
|
||||||
import org.junit.jupiter.api.DisplayName;
|
import org.junit.jupiter.api.DisplayName;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.document.DocumentAdapters;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
import org.springframework.data.elasticsearch.core.document.DocumentAdapters;
|
|
||||||
import org.springframework.data.elasticsearch.core.document.Explanation;
|
import org.springframework.data.elasticsearch.core.document.Explanation;
|
||||||
import org.springframework.data.elasticsearch.core.document.SearchDocument;
|
import org.springframework.data.elasticsearch.core.document.SearchDocument;
|
||||||
|
|
||||||
|
@ -25,6 +25,7 @@ import org.junit.jupiter.api.Test;
|
|||||||
|
|
||||||
import org.springframework.dao.DataAccessException;
|
import org.springframework.dao.DataAccessException;
|
||||||
import org.springframework.dao.OptimisticLockingFailureException;
|
import org.springframework.dao.OptimisticLockingFailureException;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchExceptionTranslator;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Roman Puchkovskiy
|
* @author Roman Puchkovskiy
|
||||||
|
@ -33,6 +33,7 @@ import org.mockito.junit.jupiter.MockitoExtension;
|
|||||||
import org.springframework.data.annotation.Id;
|
import org.springframework.data.annotation.Id;
|
||||||
import org.springframework.data.elasticsearch.annotations.Field;
|
import org.springframework.data.elasticsearch.annotations.Field;
|
||||||
import org.springframework.data.elasticsearch.annotations.FieldType;
|
import org.springframework.data.elasticsearch.annotations.FieldType;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.RequestFactory;
|
||||||
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.ElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.convert.MappingElasticsearchConverter;
|
import org.springframework.data.elasticsearch.core.convert.MappingElasticsearchConverter;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
|
@ -42,6 +42,7 @@ import org.mockito.Mock;
|
|||||||
import org.mockito.junit.jupiter.MockitoExtension;
|
import org.mockito.junit.jupiter.MockitoExtension;
|
||||||
import org.mockito.junit.jupiter.MockitoSettings;
|
import org.mockito.junit.jupiter.MockitoSettings;
|
||||||
import org.mockito.quality.Strictness;
|
import org.mockito.quality.Strictness;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchRestTemplate;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Roman Puchkovskiy
|
* @author Roman Puchkovskiy
|
||||||
|
@ -40,8 +40,8 @@ import org.springframework.context.annotation.Import;
|
|||||||
import org.springframework.dao.DataAccessException;
|
import org.springframework.dao.DataAccessException;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.IndicesOptions;
|
import org.springframework.data.elasticsearch.core.query.IndicesOptions;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQuery;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
|
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
|
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
|
||||||
import org.springframework.data.elasticsearch.utils.IndexNameProvider;
|
import org.springframework.data.elasticsearch.utils.IndexNameProvider;
|
||||||
|
@ -83,6 +83,10 @@ import org.springframework.data.elasticsearch.annotations.JoinTypeRelations;
|
|||||||
import org.springframework.data.elasticsearch.annotations.MultiField;
|
import org.springframework.data.elasticsearch.annotations.MultiField;
|
||||||
import org.springframework.data.elasticsearch.annotations.ScriptedField;
|
import org.springframework.data.elasticsearch.annotations.ScriptedField;
|
||||||
import org.springframework.data.elasticsearch.annotations.Setting;
|
import org.springframework.data.elasticsearch.annotations.Setting;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQuery;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.ScriptField;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.RequestFactory;
|
||||||
import org.springframework.data.elasticsearch.core.document.Explanation;
|
import org.springframework.data.elasticsearch.core.document.Explanation;
|
||||||
import org.springframework.data.elasticsearch.core.geo.GeoPoint;
|
import org.springframework.data.elasticsearch.core.geo.GeoPoint;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasAction;
|
import org.springframework.data.elasticsearch.core.index.AliasAction;
|
||||||
|
@ -45,6 +45,7 @@ import org.mockito.Mock;
|
|||||||
import org.mockito.junit.jupiter.MockitoExtension;
|
import org.mockito.junit.jupiter.MockitoExtension;
|
||||||
import org.mockito.junit.jupiter.MockitoSettings;
|
import org.mockito.junit.jupiter.MockitoSettings;
|
||||||
import org.mockito.quality.Strictness;
|
import org.mockito.quality.Strictness;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchTemplate;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Roman Puchkovskiy
|
* @author Roman Puchkovskiy
|
||||||
|
@ -49,10 +49,11 @@ import org.springframework.data.domain.Pageable;
|
|||||||
import org.springframework.data.domain.Sort;
|
import org.springframework.data.domain.Sort;
|
||||||
import org.springframework.data.elasticsearch.annotations.Document;
|
import org.springframework.data.elasticsearch.annotations.Document;
|
||||||
import org.springframework.data.elasticsearch.annotations.Field;
|
import org.springframework.data.elasticsearch.annotations.Field;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ElasticsearchTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQuery;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.IndicesOptions;
|
import org.springframework.data.elasticsearch.core.query.IndicesOptions;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQuery;
|
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
|
||||||
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
|
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchTemplateConfiguration;
|
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchTemplateConfiguration;
|
||||||
import org.springframework.data.elasticsearch.utils.IndexNameProvider;
|
import org.springframework.data.elasticsearch.utils.IndexNameProvider;
|
||||||
|
@ -38,8 +38,8 @@ import org.springframework.data.elasticsearch.annotations.Document;
|
|||||||
import org.springframework.data.elasticsearch.annotations.Field;
|
import org.springframework.data.elasticsearch.annotations.Field;
|
||||||
import org.springframework.data.elasticsearch.annotations.FieldType;
|
import org.springframework.data.elasticsearch.annotations.FieldType;
|
||||||
import org.springframework.data.elasticsearch.core.document.NestedMetaData;
|
import org.springframework.data.elasticsearch.core.document.NestedMetaData;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQuery;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
|
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
|
@ -37,8 +37,8 @@ import org.springframework.data.elasticsearch.annotations.Document;
|
|||||||
import org.springframework.data.elasticsearch.annotations.Field;
|
import org.springframework.data.elasticsearch.annotations.Field;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQuery;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQuery;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
|
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
||||||
import org.springframework.data.elasticsearch.utils.IndexInitializer;
|
import org.springframework.data.elasticsearch.utils.IndexInitializer;
|
||||||
|
@ -18,8 +18,6 @@ package org.springframework.data.elasticsearch.core;
|
|||||||
import static org.assertj.core.api.Assertions.*;
|
import static org.assertj.core.api.Assertions.*;
|
||||||
import static org.mockito.Mockito.*;
|
import static org.mockito.Mockito.*;
|
||||||
|
|
||||||
import org.elasticsearch.action.get.GetResponse;
|
|
||||||
import org.elasticsearch.action.get.MultiGetItemResponse;
|
|
||||||
import reactor.core.publisher.Flux;
|
import reactor.core.publisher.Flux;
|
||||||
import reactor.core.publisher.Mono;
|
import reactor.core.publisher.Mono;
|
||||||
|
|
||||||
@ -37,6 +35,8 @@ import org.elasticsearch.action.bulk.BulkItemResponse;
|
|||||||
import org.elasticsearch.action.bulk.BulkRequest;
|
import org.elasticsearch.action.bulk.BulkRequest;
|
||||||
import org.elasticsearch.action.bulk.BulkResponse;
|
import org.elasticsearch.action.bulk.BulkResponse;
|
||||||
import org.elasticsearch.action.get.GetRequest;
|
import org.elasticsearch.action.get.GetRequest;
|
||||||
|
import org.elasticsearch.action.get.GetResponse;
|
||||||
|
import org.elasticsearch.action.get.MultiGetItemResponse;
|
||||||
import org.elasticsearch.action.get.MultiGetRequest;
|
import org.elasticsearch.action.get.MultiGetRequest;
|
||||||
import org.elasticsearch.action.index.IndexRequest;
|
import org.elasticsearch.action.index.IndexRequest;
|
||||||
import org.elasticsearch.action.index.IndexResponse;
|
import org.elasticsearch.action.index.IndexResponse;
|
||||||
@ -55,13 +55,14 @@ import org.mockito.junit.jupiter.MockitoSettings;
|
|||||||
import org.mockito.quality.Strictness;
|
import org.mockito.quality.Strictness;
|
||||||
import org.springframework.data.annotation.Id;
|
import org.springframework.data.annotation.Id;
|
||||||
import org.springframework.data.domain.PageRequest;
|
import org.springframework.data.domain.PageRequest;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ReactiveElasticsearchTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
import org.springframework.data.elasticsearch.core.document.Document;
|
import org.springframework.data.elasticsearch.core.document.Document;
|
||||||
import org.springframework.data.elasticsearch.core.event.ReactiveAfterConvertCallback;
|
import org.springframework.data.elasticsearch.core.event.ReactiveAfterConvertCallback;
|
||||||
import org.springframework.data.elasticsearch.core.event.ReactiveAfterSaveCallback;
|
import org.springframework.data.elasticsearch.core.event.ReactiveAfterSaveCallback;
|
||||||
import org.springframework.data.elasticsearch.core.event.ReactiveBeforeConvertCallback;
|
import org.springframework.data.elasticsearch.core.event.ReactiveBeforeConvertCallback;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
|
|
||||||
import org.springframework.data.elasticsearch.core.query.Query;
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
import org.springframework.data.mapping.callback.ReactiveEntityCallbacks;
|
import org.springframework.data.mapping.callback.ReactiveEntityCallbacks;
|
||||||
import org.springframework.lang.Nullable;
|
import org.springframework.lang.Nullable;
|
||||||
@ -238,8 +239,8 @@ public class ReactiveElasticsearchTemplateCallbackTests {
|
|||||||
|
|
||||||
template.setEntityCallbacks(ReactiveEntityCallbacks.create(afterConvertCallback));
|
template.setEntityCallbacks(ReactiveEntityCallbacks.create(afterConvertCallback));
|
||||||
|
|
||||||
List<MultiGetItem<Person>> results = template.multiGet(pagedQueryForTwo(), Person.class, index).timeout(Duration.ofSeconds(1))
|
List<MultiGetItem<Person>> results = template.multiGet(pagedQueryForTwo(), Person.class, index)
|
||||||
.toStream().collect(Collectors.toList());
|
.timeout(Duration.ofSeconds(1)).toStream().collect(Collectors.toList());
|
||||||
|
|
||||||
verify(afterConvertCallback, times(2)).onAfterConvert(eq(new Person("init", "luke")), eq(lukeDocument()),
|
verify(afterConvertCallback, times(2)).onAfterConvert(eq(new Person("init", "luke")), eq(lukeDocument()),
|
||||||
eq(index));
|
eq(index));
|
||||||
@ -379,8 +380,7 @@ public class ReactiveElasticsearchTemplateCallbackTests {
|
|||||||
@Nullable @Id String id;
|
@Nullable @Id String id;
|
||||||
@Nullable String firstname;
|
@Nullable String firstname;
|
||||||
|
|
||||||
public Person() {
|
public Person() {}
|
||||||
}
|
|
||||||
|
|
||||||
public Person(@Nullable String id, @Nullable String firstname) {
|
public Person(@Nullable String id, @Nullable String firstname) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
@ -407,12 +407,15 @@ public class ReactiveElasticsearchTemplateCallbackTests {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean equals(Object o) {
|
public boolean equals(Object o) {
|
||||||
if (this == o) return true;
|
if (this == o)
|
||||||
if (o == null || getClass() != o.getClass()) return false;
|
return true;
|
||||||
|
if (o == null || getClass() != o.getClass())
|
||||||
|
return false;
|
||||||
|
|
||||||
Person person = (Person) o;
|
Person person = (Person) o;
|
||||||
|
|
||||||
if (id != null ? !id.equals(person.id) : person.id != null) return false;
|
if (id != null ? !id.equals(person.id) : person.id != null)
|
||||||
|
return false;
|
||||||
return firstname != null ? firstname.equals(person.firstname) : person.firstname == null;
|
return firstname != null ? firstname.equals(person.firstname) : person.firstname == null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -70,15 +70,27 @@ import org.springframework.data.elasticsearch.annotations.Field;
|
|||||||
import org.springframework.data.elasticsearch.annotations.FieldType;
|
import org.springframework.data.elasticsearch.annotations.FieldType;
|
||||||
import org.springframework.data.elasticsearch.annotations.Mapping;
|
import org.springframework.data.elasticsearch.annotations.Mapping;
|
||||||
import org.springframework.data.elasticsearch.annotations.Setting;
|
import org.springframework.data.elasticsearch.annotations.Setting;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ReactiveElasticsearchTemplate;
|
||||||
import org.springframework.data.elasticsearch.core.clients.elasticsearch7.ElasticsearchAggregation;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQuery;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.query.NativeSearchQueryBuilder;
|
||||||
|
import org.springframework.data.elasticsearch.clients.elasticsearch7.ElasticsearchAggregation;
|
||||||
import org.springframework.data.elasticsearch.core.document.Explanation;
|
import org.springframework.data.elasticsearch.core.document.Explanation;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasAction;
|
import org.springframework.data.elasticsearch.core.index.AliasAction;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasActionParameters;
|
import org.springframework.data.elasticsearch.core.index.AliasActionParameters;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasActions;
|
import org.springframework.data.elasticsearch.core.index.AliasActions;
|
||||||
import org.springframework.data.elasticsearch.core.index.AliasData;
|
import org.springframework.data.elasticsearch.core.index.AliasData;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.*;
|
import org.springframework.data.elasticsearch.core.query.ByQueryResponse;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.Criteria;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.CriteriaQuery;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.IndexQuery;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.IndexQueryBuilder;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.Query;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.SeqNoPrimaryTerm;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.StringQuery;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
|
||||||
|
import org.springframework.data.elasticsearch.core.query.UpdateResponse;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.ReactiveElasticsearchRestTemplateConfiguration;
|
import org.springframework.data.elasticsearch.junit.jupiter.ReactiveElasticsearchRestTemplateConfiguration;
|
||||||
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
|
||||||
import org.springframework.data.elasticsearch.utils.IndexNameProvider;
|
import org.springframework.data.elasticsearch.utils.IndexNameProvider;
|
||||||
|
@ -31,11 +31,9 @@ import java.util.Collections;
|
|||||||
|
|
||||||
import org.elasticsearch.action.delete.DeleteRequest;
|
import org.elasticsearch.action.delete.DeleteRequest;
|
||||||
import org.elasticsearch.action.index.IndexRequest;
|
import org.elasticsearch.action.index.IndexRequest;
|
||||||
import org.elasticsearch.action.main.MainResponse;
|
|
||||||
import org.elasticsearch.action.search.SearchRequest;
|
import org.elasticsearch.action.search.SearchRequest;
|
||||||
import org.elasticsearch.action.support.IndicesOptions;
|
import org.elasticsearch.action.support.IndicesOptions;
|
||||||
import org.elasticsearch.action.support.WriteRequest;
|
import org.elasticsearch.action.support.WriteRequest;
|
||||||
import org.elasticsearch.cluster.ClusterName;
|
|
||||||
import org.elasticsearch.index.query.QueryBuilders;
|
import org.elasticsearch.index.query.QueryBuilders;
|
||||||
import org.elasticsearch.index.reindex.DeleteByQueryRequest;
|
import org.elasticsearch.index.reindex.DeleteByQueryRequest;
|
||||||
import org.junit.jupiter.api.BeforeEach;
|
import org.junit.jupiter.api.BeforeEach;
|
||||||
@ -51,7 +49,8 @@ import org.springframework.data.domain.Pageable;
|
|||||||
import org.springframework.data.elasticsearch.annotations.Document;
|
import org.springframework.data.elasticsearch.annotations.Document;
|
||||||
import org.springframework.data.elasticsearch.annotations.Field;
|
import org.springframework.data.elasticsearch.annotations.Field;
|
||||||
import org.springframework.data.elasticsearch.annotations.ScriptedField;
|
import org.springframework.data.elasticsearch.annotations.ScriptedField;
|
||||||
import org.springframework.data.elasticsearch.client.reactive.ReactiveElasticsearchClient;
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.ReactiveElasticsearchTemplate;
|
||||||
|
import org.springframework.data.elasticsearch.backend.elasticsearch7.client.reactive.ReactiveElasticsearchClient;
|
||||||
import org.springframework.data.elasticsearch.core.geo.GeoPoint;
|
import org.springframework.data.elasticsearch.core.geo.GeoPoint;
|
||||||
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
import org.springframework.data.elasticsearch.core.mapping.IndexCoordinates;
|
||||||
import org.springframework.data.elasticsearch.core.query.Criteria;
|
import org.springframework.data.elasticsearch.core.query.Criteria;
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user