Class ElasticsearchIndexManager
java.lang.Object
io.jmix.search.index.impl.BaseIndexManager<co.elastic.clients.elasticsearch.indices.IndexState,co.elastic.clients.elasticsearch.indices.IndexSettings,co.elastic.clients.json.JsonpSerializable>
io.jmix.searchelasticsearch.index.impl.ElasticsearchIndexManager
- All Implemented Interfaces:
IndexManager
public class ElasticsearchIndexManager
extends BaseIndexManager<co.elastic.clients.elasticsearch.indices.IndexState,co.elastic.clients.elasticsearch.indices.IndexSettings,co.elastic.clients.json.JsonpSerializable>
Implementation for Elasticsearch
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final co.elastic.clients.elasticsearch.ElasticsearchClientprotected final ElasticsearchIndexSettingsProviderprotected final ElasticsearchPutMappingRequestBuilderFields inherited from class io.jmix.search.index.impl.BaseIndexManager
indexConfigurationComparator, indexConfigurationManager, indexStateRegistry, indexStateResolver, objectMapper, searchProperties -
Constructor Summary
ConstructorsConstructorDescriptionElasticsearchIndexManager(co.elastic.clients.elasticsearch.ElasticsearchClient client, IndexStateRegistry indexStateRegistry, IndexConfigurationManager indexConfigurationManager, SearchProperties searchProperties, ElasticsearchIndexSettingsProvider indexSettingsProcessor, ElasticsearchIndexConfigurationComparator configurationComparator, ElasticsearchIndexStateResolver indexStateResolver, ElasticsearchPutMappingRequestBuilder putMappingRequestBuilder) -
Method Summary
Modifier and TypeMethodDescriptionprotected co.elastic.clients.elasticsearch._types.mapping.TypeMappingbuildMapping(IndexConfiguration indexConfiguration) protected co.elastic.clients.elasticsearch.indices.IndexSettingsbuildSettings(IndexConfiguration indexConfiguration) booleancreateIndex(IndexConfiguration indexConfiguration) Creates index if not exists using providedIndexConfiguration.booleanDrops index by name.com.fasterxml.jackson.databind.node.ObjectNodegetIndexMetadata(String indexName) Requests info about index from server.booleanisIndexExist(String indexName) Checks if index exists.booleanputMapping(String indexName, IndexMappingConfiguration mapping) Methods inherited from class io.jmix.search.index.impl.BaseIndexManager
getIndexValidationStatus, handleMissingIndex, recreateIndex, recreateIndexes, recreateIndexes, recreateIrrelevantIndex, synchronizeIndexSchema, synchronizeIndexSchema, synchronizeIndexSchemas, synchronizeIndexSchemas, updateIndexConfiguration, validateIndex, validateIndexes, validateIndexes
-
Field Details
-
client
protected final co.elastic.clients.elasticsearch.ElasticsearchClient client -
indexSettingsProcessor
-
putMappingRequestBuilder
-
-
Constructor Details
-
ElasticsearchIndexManager
public ElasticsearchIndexManager(co.elastic.clients.elasticsearch.ElasticsearchClient client, IndexStateRegistry indexStateRegistry, IndexConfigurationManager indexConfigurationManager, SearchProperties searchProperties, ElasticsearchIndexSettingsProvider indexSettingsProcessor, ElasticsearchIndexConfigurationComparator configurationComparator, ElasticsearchIndexStateResolver indexStateResolver, ElasticsearchPutMappingRequestBuilder putMappingRequestBuilder)
-
-
Method Details
-
createIndex
Description copied from interface:IndexManagerCreates index if not exists using providedIndexConfiguration.- Parameters:
indexConfiguration- index configuration- Returns:
- true if index was successfully created, false otherwise
-
dropIndex
Description copied from interface:IndexManagerDrops index by name.- Parameters:
indexName- index name- Returns:
- true if index was successfully dropped, false otherwise
-
isIndexExist
Description copied from interface:IndexManagerChecks if index exists.- Parameters:
indexName- index name- Returns:
- true if index exists, false otherwise
-
getIndexMetadata
Description copied from interface:IndexManagerRequests info about index from server.- Parameters:
indexName- index name- Returns:
- response as Json
-
putMapping
- Specified by:
putMappingin classBaseIndexManager<co.elastic.clients.elasticsearch.indices.IndexState,co.elastic.clients.elasticsearch.indices.IndexSettings, co.elastic.clients.json.JsonpSerializable>
-
buildMapping
protected co.elastic.clients.elasticsearch._types.mapping.TypeMapping buildMapping(IndexConfiguration indexConfiguration) -
buildSettings
protected co.elastic.clients.elasticsearch.indices.IndexSettings buildSettings(IndexConfiguration indexConfiguration)
-