Interface SearchManager

  • All Superinterfaces:
    io.vertigo.core.node.component.Component, io.vertigo.core.node.component.CoreComponent, io.vertigo.core.node.component.Manager
    All Known Implementing Classes:
    SearchManagerImpl

    public interface SearchManager
    extends io.vertigo.core.node.component.Manager
    Gestionnaire des indexes de recherche.
    Author:
    dchallas, npiedeloup
    • Method Detail

      • findFirstIndexDefinitionByKeyConcept

        SearchIndexDefinition findFirstIndexDefinitionByKeyConcept​(Class<? extends io.vertigo.datamodel.structure.model.KeyConcept> keyConceptClass)
        Find IndexDefinition for a keyConcept. It must be one and only one IndexDefinition.
        Parameters:
        keyConceptClass - keyConcept class
        Returns:
        SearchIndexDefinition for this keyConcept (not null)
      • findIndexDefinitionByKeyConcept

        @Deprecated
        SearchIndexDefinition findIndexDefinitionByKeyConcept​(Class<? extends io.vertigo.datamodel.structure.model.KeyConcept> keyConceptClass)
        Deprecated.
        use findFirstIndexDefinitionByKeyConcept instead
        Find IndexDefinition for a keyConcept. It must be one and only one IndexDefinition.
        Parameters:
        keyConceptClass - keyConcept class
        Returns:
        SearchIndexDefinition for this keyConcept (not null)
      • markAsDirty

        void markAsDirty​(List<io.vertigo.datamodel.structure.model.UID<? extends io.vertigo.datamodel.structure.model.KeyConcept>> keyConceptUIDs)
        Mark an uid list as dirty. Index of these elements will be reindexed. Reindexation isn't synchrone, strategy is dependant of plugin's parameters.
        Parameters:
        keyConceptUIDs - UID of keyConcept marked as dirty.
      • reindexAll

        Future<Long> reindexAll​(SearchIndexDefinition indexDefinition)
        Launch a complete reindexation of an index.
        Parameters:
        indexDefinition - Type de l'index
        Returns:
        Future of number elements indexed
      • putAll

        <K extends io.vertigo.datamodel.structure.model.KeyConcept,​I extends io.vertigo.datamodel.structure.model.DtObject> void putAll​(SearchIndexDefinition indexDefinition,
                                                                                                                                              Collection<SearchIndex<K,​I>> indexCollection)
        Ajout de plusieurs ressources à l'index. Si les éléments étaient déjà dans l'index ils sont remplacés.
        Type Parameters:
        I - Type de l'objet représentant l'index
        K - Type du keyConcept métier indexé
        Parameters:
        indexDefinition - Type de l'index
        indexCollection - Liste des objets à pousser dans l'index
      • put

        <K extends io.vertigo.datamodel.structure.model.KeyConcept,​I extends io.vertigo.datamodel.structure.model.DtObject> void put​(SearchIndexDefinition indexDefinition,
                                                                                                                                           SearchIndex<K,​I> index)
        Ajout d'une ressource à l'index. Si l'élément était déjà dans l'index il est remplacé.
        Type Parameters:
        I - Type de l'objet représentant l'index
        K - Type du keyConcept métier indexé
        Parameters:
        indexDefinition - Type de l'index
        index - Objet à pousser dans l'index
      • loadList

        <I extends io.vertigo.datamodel.structure.model.DtObject> FacetedQueryResult<I,​SearchQuery> loadList​(SearchIndexDefinition indexDefinition,
                                                                                                                   SearchQuery searchQuery,
                                                                                                                   io.vertigo.datamodel.structure.model.DtListState listState)
        Récupération du résultat issu d'une requête.
        Type Parameters:
        I - Type de l'objet resultant de la recherche
        Parameters:
        searchQuery - critères initiaux
        indexDefinition - Type de l'index
        listState - Etat de la liste (tri et pagination)
        Returns:
        Résultat correspondant à la requête
      • loadList

        <I extends io.vertigo.datamodel.structure.model.DtObject> FacetedQueryResult<I,​SearchQuery> loadList​(List<SearchIndexDefinition> indexDefinitions,
                                                                                                                   SearchQuery searchQuery,
                                                                                                                   io.vertigo.datamodel.structure.model.DtListState listState)
        Récupération du résultat issu d'une requête.
        Type Parameters:
        I - Type de l'objet resultant de la recherche
        Parameters:
        searchQuery - critères initiaux
        indexDefinition - Type de l'index
        listState - Etat de la liste (tri et pagination)
        Returns:
        Résultat correspondant à la requête
      • count

        long count​(SearchIndexDefinition indexDefinition)
        Parameters:
        indexDefinition - Type de l'index
        Returns:
        Nombre de document indexés
      • remove

        <K extends io.vertigo.datamodel.structure.model.KeyConcept> void remove​(SearchIndexDefinition indexDefinition,
                                                                                io.vertigo.datamodel.structure.model.UID<K> uid)
        Suppression d'une ressource de l'index.
        Type Parameters:
        K - Type du keyConcept métier indexé
        Parameters:
        indexDefinition - Type de l'index
        uid - UID de la ressource à supprimer
      • removeAll

        void removeAll​(SearchIndexDefinition indexDefinition,
                       ListFilter listFilter)
        Suppression des données correspondant à un filtre.
        Parameters:
        indexDefinition - Type de l'index
        listFilter - Filtre des éléments à supprimer