Class ElasticsearchIndexManager
java.lang.Object
io.jmix.search.index.impl.BaseIndexManager
io.jmix.searchelasticsearch.index.impl.ElasticsearchIndexManager
- All Implemented Interfaces:
IndexManager
Implementation for Elasticsearch
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final co.elastic.clients.elasticsearch.ElasticsearchClientprotected final ElasticsearchIndexSettingsProviderFields inherited from class io.jmix.search.index.impl.BaseIndexManager
indexConfigurationManager, indexStateRegistry, MAP_TYPE_REF, objectMapper, searchProperties -
Constructor Summary
ConstructorsConstructorDescriptionElasticsearchIndexManager(co.elastic.clients.elasticsearch.ElasticsearchClient client, IndexStateRegistry indexStateRegistry, IndexConfigurationManager indexConfigurationManager, SearchProperties searchProperties, ElasticsearchIndexSettingsProvider indexSettingsProcessor) -
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.protected co.elastic.clients.elasticsearch.indices.IndexStategetIndexMetadataInternal(String indexName) getIndexMetadataMapInternal(String indexName) protected booleanisIndexActual(IndexConfiguration indexConfiguration) booleanisIndexExist(String indexName) Checks if index exists.protected booleanisIndexMappingActual(IndexConfiguration indexConfiguration, co.elastic.clients.elasticsearch.indices.IndexState currentIndexState) protected booleanisIndexSettingsActual(IndexConfiguration indexConfiguration, co.elastic.clients.elasticsearch.indices.IndexState currentIndexState) protected com.fasterxml.jackson.databind.JsonNodetoJsonNode(co.elastic.clients.json.JsonpSerializable object) protected com.fasterxml.jackson.databind.node.ObjectNodetoObjectNode(co.elastic.clients.json.JsonpSerializable object) Methods inherited from class io.jmix.search.index.impl.BaseIndexManager
handleIrrelevantIndex, handleMissingIndex, nodeContains, recreateIndex, recreateIndexes, recreateIndexes, synchronizeIndexSchema, synchronizeIndexSchema, synchronizeIndexSchemas, synchronizeIndexSchemas, validateIndex, validateIndexes, validateIndexes
-
Field Details
-
client
protected final co.elastic.clients.elasticsearch.ElasticsearchClient client -
indexSettingsProcessor
-
-
Constructor Details
-
ElasticsearchIndexManager
public ElasticsearchIndexManager(co.elastic.clients.elasticsearch.ElasticsearchClient client, IndexStateRegistry indexStateRegistry, IndexConfigurationManager indexConfigurationManager, SearchProperties searchProperties, ElasticsearchIndexSettingsProvider indexSettingsProcessor)
-
-
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
-
isIndexActual
- Specified by:
isIndexActualin classBaseIndexManager
-
buildMapping
protected co.elastic.clients.elasticsearch._types.mapping.TypeMapping buildMapping(IndexConfiguration indexConfiguration) -
buildSettings
protected co.elastic.clients.elasticsearch.indices.IndexSettings buildSettings(IndexConfiguration indexConfiguration) -
toJsonNode
protected com.fasterxml.jackson.databind.JsonNode toJsonNode(co.elastic.clients.json.JsonpSerializable object) -
toObjectNode
protected com.fasterxml.jackson.databind.node.ObjectNode toObjectNode(co.elastic.clients.json.JsonpSerializable object) -
getIndexMetadataMapInternal
-
getIndexMetadataInternal
@Nullable protected co.elastic.clients.elasticsearch.indices.IndexState getIndexMetadataInternal(String indexName) -
isIndexMappingActual
protected boolean isIndexMappingActual(IndexConfiguration indexConfiguration, co.elastic.clients.elasticsearch.indices.IndexState currentIndexState) -
isIndexSettingsActual
protected boolean isIndexSettingsActual(IndexConfiguration indexConfiguration, co.elastic.clients.elasticsearch.indices.IndexState currentIndexState)
-