Class RestClientESSearchServicesPlugin
java.lang.Object
io.vertigo.datafactory.plugins.search.elasticsearch.rest.RestClientESSearchServicesPlugin
- All Implemented Interfaces:
io.vertigo.core.node.component.Activeable,io.vertigo.core.node.component.CoreComponent,io.vertigo.core.node.component.Plugin,SearchServicesPlugin
public final class RestClientESSearchServicesPlugin
extends Object
implements SearchServicesPlugin, io.vertigo.core.node.component.Activeable
Gestion de la connexion au serveur ElasticSearch.
- Author:
- dchallas, npiedeloup, mlaroche
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringfield suffix for keyword fields added by this plugin. -
Constructor Summary
ConstructorsConstructorDescriptionRestClientESSearchServicesPlugin(String envIndexPrefix, int defaultMaxRows, String configFile, Optional<String> connectorNameOpt, List<io.vertigo.connectors.elasticsearch.RestElasticSearchConnector> elasticSearchConnectors, io.vertigo.commons.codec.CodecManager codecManager, io.vertigo.datamodel.smarttype.SmartTypeManager smartTypeManager, io.vertigo.core.resource.ResourceManager resourceManager) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionio.vertigo.core.analytics.health.HealthMeasurelongcount(SearchIndexDefinition indexDefinition) getMetaData(SearchIndexDefinition indexDefinition, String dataPath) Lecture de meta data à l'index.<R extends io.vertigo.datamodel.data.model.DataObject>
FacetedQueryResult<R, SearchQuery> loadList(List<SearchIndexDefinition> indexDefinitions, SearchQuery searchQuery, io.vertigo.datamodel.data.model.DtListState listState) Récupération du résultat issu d'une requête.<K extends io.vertigo.datamodel.data.model.KeyConcept>
Map<io.vertigo.datamodel.data.model.UID<K>, Serializable> loadVersions(SearchIndexDefinition indexDefinition, io.vertigo.datamodel.data.definitions.DataFieldName<K> versionFieldName, ListFilter listFilter, int maxElements) <S extends io.vertigo.datamodel.data.model.KeyConcept,I extends io.vertigo.datamodel.data.model.DataObject>
voidput(SearchIndexDefinition indexDefinition, SearchIndex<S, I> index) Ajout d'une ressource à l'index.<S extends io.vertigo.datamodel.data.model.KeyConcept,I extends io.vertigo.datamodel.data.model.DataObject>
voidputAll(SearchIndexDefinition indexDefinition, Collection<SearchIndex<S, I>> indexCollection) Ajout de plusieurs ressources à l'index.voidputMetaData(SearchIndexDefinition indexDefinition, String dataPath, Serializable dataValue) Ajout de meta data à l'index.voidremove(SearchIndexDefinition indexDefinition, ListFilter listFilter) Suppression des données correspondant à un filtre.<S extends io.vertigo.datamodel.data.model.KeyConcept>
voidremove(SearchIndexDefinition indexDefinition, io.vertigo.datamodel.data.model.UID<S> uri) Suppression d'une ressource de l'index.static StringshowStringDifference(String current, String expected) voidstart()voidstop()voidwaitForRefresh(List<SearchIndexDefinition> indexDefinitions) Attente de la prise en compte des données dans l'index.
-
Field Details
-
SUFFIX_SORT_FIELD
field suffix for keyword fields added by this plugin.- See Also:
-
-
Constructor Details
-
RestClientESSearchServicesPlugin
@Inject public RestClientESSearchServicesPlugin(String envIndexPrefix, int defaultMaxRows, String configFile, Optional<String> connectorNameOpt, List<io.vertigo.connectors.elasticsearch.RestElasticSearchConnector> elasticSearchConnectors, io.vertigo.commons.codec.CodecManager codecManager, io.vertigo.datamodel.smarttype.SmartTypeManager smartTypeManager, io.vertigo.core.resource.ResourceManager resourceManager) Constructor.- Parameters:
envIndexPrefix- ES index namedefaultMaxRows- Nombre de lignesconfigFile- Fichier de configuration des indexscodecManager- Manager de codecresourceManager- Manager des resourcesindexNameIsPrefix- indexName use as prefix
-
-
Method Details
-
start
public void start()- Specified by:
startin interfaceio.vertigo.core.node.component.Activeable
-
stop
public void stop()- Specified by:
stopin interfaceio.vertigo.core.node.component.Activeable
-
showStringDifference
-
putAll
public <S extends io.vertigo.datamodel.data.model.KeyConcept,I extends io.vertigo.datamodel.data.model.DataObject> void putAll(SearchIndexDefinition indexDefinition, Collection<SearchIndex<S, I>> indexCollection) Ajout de plusieurs ressources à l'index. Si les éléments étaient déjà dans l'index ils sont remplacés.- Specified by:
putAllin interfaceSearchServicesPlugin- Type Parameters:
S- Type du keyConcept métier indexéI- Type de l'objet représentant l'index- Parameters:
indexDefinition- Type de l'indexindexCollection- Liste des objets à pousser dans l'index
-
put
public <S extends io.vertigo.datamodel.data.model.KeyConcept,I extends io.vertigo.datamodel.data.model.DataObject> void put(SearchIndexDefinition indexDefinition, SearchIndex<S, I> index) Ajout d'une ressource à l'index. Si l'élément était déjà dans l'index il est remplacé.- Specified by:
putin interfaceSearchServicesPlugin- Type Parameters:
S- Type du keyConcept métier indexéI- Type de l'objet représentant l'index- Parameters:
indexDefinition- Type de l'indexindex- Objet à pousser dans l'index
-
remove
public <S extends io.vertigo.datamodel.data.model.KeyConcept> void remove(SearchIndexDefinition indexDefinition, io.vertigo.datamodel.data.model.UID<S> uri) Suppression d'une ressource de l'index.- Specified by:
removein interfaceSearchServicesPlugin- Type Parameters:
S- Type du keyConcept métier indexé- Parameters:
indexDefinition- Type de l'indexuri- UID de la ressource à supprimer
-
loadList
public <R extends io.vertigo.datamodel.data.model.DataObject> FacetedQueryResult<R,SearchQuery> loadList(List<SearchIndexDefinition> indexDefinitions, SearchQuery searchQuery, io.vertigo.datamodel.data.model.DtListState listState) Récupération du résultat issu d'une requête.- Specified by:
loadListin interfaceSearchServicesPlugin- Type Parameters:
R- Type de l'objet resultant de la recherche- Parameters:
searchQuery- critères initiauxlistState- Etat de la liste (tri et pagination)- Returns:
- Résultat correspondant à la requête
-
count
- Specified by:
countin interfaceSearchServicesPlugin- Parameters:
indexDefinition- Type de l'index- Returns:
- Nombre de document indexés
-
loadVersions
public <K extends io.vertigo.datamodel.data.model.KeyConcept> Map<io.vertigo.datamodel.data.model.UID<K>,Serializable> loadVersions(SearchIndexDefinition indexDefinition, io.vertigo.datamodel.data.definitions.DataFieldName<K> versionFieldName, ListFilter listFilter, int maxElements) - Specified by:
loadVersionsin interfaceSearchServicesPlugin- Type Parameters:
K- Type du keyConcept métier indexé- Parameters:
indexDefinition- Type de l'indexversionFieldName- Field qui porte la version du keyconceptlistFilter- Filtre des documentmaxElements- Nb Max elements to return- Returns:
- Map des versions par UID
-
remove
Suppression des données correspondant à un filtre.- Specified by:
removein interfaceSearchServicesPlugin- Parameters:
indexDefinition- Type de l'indexlistFilter- Filtre des éléments à supprimer
-
getMetaData
Lecture de meta data à l'index.- Specified by:
getMetaDatain interfaceSearchServicesPlugin- Parameters:
indexDefinition- Type de l'indexdataPath- Clé de la métadonnée- Returns:
- Valeur de la métadonnée, null si pas de donnée
-
putMetaData
public void putMetaData(SearchIndexDefinition indexDefinition, String dataPath, Serializable dataValue) Ajout de meta data à l'index. Si l'élément était déjà dans l'index il est remplacé.- Specified by:
putMetaDatain interfaceSearchServicesPlugin- Parameters:
indexDefinition- Type de l'indexdataPath- Clé de la métadonnéedataValue- Valeur de la métadonnée
-
waitForRefresh
Attente de la prise en compte des données dans l'index.- Specified by:
waitForRefreshin interfaceSearchServicesPlugin- Parameters:
indexDefinitions- Type de l'index
-
checkClusterHealth
public io.vertigo.core.analytics.health.HealthMeasure checkClusterHealth()
-